文档章节

Android必备:Android UI控件的了解与学习

Realfighter
 Realfighter
发布于 2015/02/26 13:17
字数 857
阅读 508
收藏 7

    看这里:Android必备:Android UI控件的了解与学习

    由于工作需要,最近一段时间,需要进行Android App开发的学习,之前简单的进行过Android的了解,对于基本的Android环境的搭建等已经有过整理,一个Android App是由一个或多个Activity组成,每一个Activity都是一个UI容器,也就是一个屏幕界面,一个界面的组成则是由一组Android UI控件组成,本篇,我们就来简单的对Android UI控件进行初步的了解和学习。

    Android UI控件根据其作用,大致可以分为两种:视图控件和布局控件。首先我们来了解一下视图控件。

    在App的开发中,一个视图控件在屏幕上占据一定的区域空间,通过Android提供的api,我们可以管理和空间这片区域的显示,以及处理这片区域发生的事件。比如Button(按钮)、TextView(文字框)、EditText(编辑框)、List(列表)、CheckBox(复选框)、RadioButton(单选框)等,这些视图控件都是继承自View类,它们都属于Android应用程序组成中的Widget。

    View可以放在ViewGroup中,由ViewGroup进行布局的管理,实现ViewGroup的类即为布局控件,在Android中布局通常有以下几种不同的情况(以下内容引自Android应用开发入门教程):

  • FrameLayout(框架布局):系统默认的在屏幕上就有空白区显示它; 

  • LinearLayout(线性布局):让所有的子视图都成为单一的方向,即垂直的或者水平的; 

  • AbsoluteLayout(绝对布局):让子视图使用x/y坐标确定在屏幕上的位置; 

  • RelativeLayout(相对布局):让子视图的位置和其他的视图相关; 

  • TableLayout(表格布局):位置是它的子视图的行或列。

    在实际开发中,经常使用的有两个:LinearLayout和RalativeLayout。LinearLayout是一种线性布局,可以进行垂直或水平方向的布局,需要通过android:orientation参数设置布局属性,vertical表示垂直布局,horizontal表示水平布局。RalativeLayout是相对布局,即根据控件的相对位置来确定自己的位置,进行布局。

     Android中控件类的扩展结构如图所示(引自Android应用开发入门教程):


    总的来说,Android App开发的基础是对Android布局文件XML的编写,即对UI控件的合理使用和布局控制,通过各个空间提供的一些布局参数,我们可以对控件进行精确的屏幕绘制,也需要持续的学习才能熟练应用,当然,我们也可以将这些基础控件组合成一个新控件,实现控件的自定义,这些也都需要持续的了解和学习。

© 著作权归作者所有

共有 人打赏支持
Realfighter

Realfighter

粉丝 141
博文 139
码字总数 144659
作品 2
洛阳
程序员
私信 提问
Android必备:Activity 活动 和 Intent 意图 的学习整理

看这里:Android必备:Activity 活动 和 Intent 意图 的学习整理 在Android必备:Android UI控件的了解与学习中,对AndroidUI做了初步的了解和学习,本篇继续进行Android开发学习的整理。And...

Realfighter
2015/03/04
0
0
转载:最强最全干货分享:Android开发书籍、教程、工具等

最全干货分享,本文收集整理了Android开发所需的书籍、教程、工具、资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益。 入门 《Learning Android(中文版)》 本书为Andro...

拉偶有所依
2015/01/09
152
3
最强最全干货分享:Android开发书籍、教程、工具等

最全干货分享,本文收集整理了Android开发所需的书籍、教程、工具、资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益。 入门 《Learning Android(中文版)》 本书为Andro...

拉偶有所依
2015/01/09
0
1
Android开发学习的同学们的一些建议

我写到了想学习android的同学应该要掌握的一些java基础知识,虽然写的是基础,但是其实往往很多的学员们走上工作岗位上就会真正发现基础决定了你的上层建筑能否搭建好!今天,在这篇日志中,...

浮生侃侃
2016/04/19
125
0
给学android的同学们的一些建议

我写到了想学习android的同学应该要掌握的一些java基础知识,虽然写的是基础,但是其实往往很多的学员们走上工作岗位上就会真正发现基础决定了你的上层建筑能否搭建好!今天,在这篇日志中,...

星空夜愿
2016/04/16
205
0

没有更多内容

加载失败,请刷新页面

加载更多

计算游戏权重代码

$list = [ [ 'pt' => 1, //权重序号 'pv' => 0, //权重值 ], [ 'pt' => 2, 'pv' => 10, ], [ 'pt' => 3, ......

我才是张先生
7分钟前
5
0
智能分单算法

算法描述 目前在物流,企业用工等领域,都有着大量的通过算法对接到的订单进行智能分配的需求。本文模拟的是用户下订单,然后商家接到订单,由配送人员进行派送的场景。在实际的应用中类似于...

鱼煎
8分钟前
0
0
即将开源 | 2亿用户背后的Flutter应用框架Fish Redux

背景 在闲鱼深度使用 Flutter 开发过程中,我们遇到了业务代码耦合严重,代码可维护性糟糕,如入泥泞。对于闲鱼这样的负责业务场景,我们需要一个统一的应用框架来摆脱当下的开发困境,而这也...

阿里云云栖社区
14分钟前
0
0
Ubuntu上搭建比特币运行环境

Ubuntu版本:16.04.3 Bitcoin Core版本:0.16 1. 比特币运行依赖的开源库 (1)必须依赖的库 库 目的 描述 libssl 加密 随机数生成,椭圆曲线加密算法 libboost 工具 线程库,数据结构等 li...

LoSingSang
18分钟前
1
0
IDE 插件新版本发布,开发效率 “biu” 起来了

近日,Cloud Toolkit正式推出了面向 IntelliJ 和 Eclipse 两个平台的新款插件,本文挑选了其中三个重大特性进行解读,点击文末官网跳转链接,可查看详细的版本说明。 本地应用一键部署到任何...

zhaowei121
23分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部