Android常用UI布局的介绍
2013-08-22 22:17
183 查看
Ø为了适应各种界面风格,Android提供了5种布局,这5种布局分别是:
FrameLayout(框架布局)、LinearLayout(线性布局)、RelativeLayout(相对布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局)等
常用属性介绍
ØAndroid表示单位长度的方式通常有三种表示方式。
Øpx:表示屏幕实际的象素。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。
Ødp(dip): 是屏幕的物理尺寸。大小为1英寸的1/72。
Øsp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。
线性布局
Ølayout_weight
用于给一个线性布局中的诸多视图的重要度赋值。
Ø
所有的视图都有一个layout_weight值,默认为零,意思是需要显示
Ø
多大的视图就占据多大的屏幕空间。若赋一个高于零的值,则将父视
Ø
图中的可用空间分割,分割大小具体取决于每一个视图的layout_weight
Ø
值以及该值在当前屏幕布局的整体 layout_weight值和在其它视图屏幕布
Ø
局的layout_weight值中所占的比率而定。
框架布局
框架布局是最简单的布局方式、所有添加到这个布局中的视图都是以层叠的方式显示。第一个添加到框架布局中的视图显示在最底层,最后一个被放在最顶层,上一层的视图会覆盖下一层的视图,因此框架布局类似堆栈布局。
相对布局
绝对布局
Ø所谓绝对布局(AbsoluteLayout),是指屏幕中所有控件的摆放由开发人员通过设置控件的坐标来指定,控件容器不再负责管理其子控件的位置。由于子控件的位置和布局都是通过坐标来指定,因此AbsoluteLayout类中没有特殊的属性和方法。
Ø可以通过android:layout_x和android:layout_y属性可以设置视图的横坐标和纵坐标的位置。
表格布局
Ø在TableLayout布局中,一个列的宽度由该列中最宽的那个单元格指定,而表格的宽度是由父容器指定的。在TableLayout中,可以为列设置三种属性:
ØShrinkable:如果一个列被标识为Shrinkable,则该列的宽度可以进行收缩,以使表格能够适应其父容器的大小。
ØStretchable:如果一个列被标识为Stretchable,则该列的宽度可以进行拉伸,以使填满表格中的空闲空间。
ØCollapsed:如果一个列被标识为Collapsed,则该列会被隐藏
Ø注意:一个列可以同时具有Shrinkable属性和Stretchable属性,在这种情况下,该列的宽度将任意拉伸或收缩以适应父容器
ØTableLayout继承自LinearLayout类,除了继承来自父类的属性和方法,TableLayout类中还包含表格布局所特有的属性和方法,如下表:
Ø注意:TableLayout中所谓的列序号是从0开始计算的。setShrinkAllColumns和setStretchAllColumns实现的功能是将表格中的所有列设置为Shrinkable或Stretchable。
-----感谢老罗的奉献。
FrameLayout(框架布局)、LinearLayout(线性布局)、RelativeLayout(相对布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局)等
常用属性介绍
ØAndroid表示单位长度的方式通常有三种表示方式。
Øpx:表示屏幕实际的象素。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。
Ødp(dip): 是屏幕的物理尺寸。大小为1英寸的1/72。
Øsp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。
线性布局
属性 | 描述 |
wrap_content | 填满父控件的空白 |
fill_parent match_parent | 表示大小刚好足够显示当前控件里的内容Android中fill_parent和match_parent是一样的。 在Android2.2中启动match_parent,不用fill_parent |
用于给一个线性布局中的诸多视图的重要度赋值。
Ø
所有的视图都有一个layout_weight值,默认为零,意思是需要显示
Ø
多大的视图就占据多大的屏幕空间。若赋一个高于零的值,则将父视
Ø
图中的可用空间分割,分割大小具体取决于每一个视图的layout_weight
Ø
值以及该值在当前屏幕布局的整体 layout_weight值和在其它视图屏幕布
Ø
局的layout_weight值中所占的比率而定。
框架布局
框架布局是最简单的布局方式、所有添加到这个布局中的视图都是以层叠的方式显示。第一个添加到框架布局中的视图显示在最底层,最后一个被放在最顶层,上一层的视图会覆盖下一层的视图,因此框架布局类似堆栈布局。
属性值 | 描述 |
top | 将视图放到屏幕的顶端 |
Buttom | 将视图放到屏幕的底端 |
Left | 将视图放在屏幕的左侧 |
Right | 将视图放在屏幕的右侧 |
Center_vertical | 将视图按照垂直方向居中显示 |
horizontal_vertical | 将视图按照水平方向居中显示 |
属性 | 说明 |
android:layout_below | 在某元素的下方 |
android:layout_above | 在某元素的的上方 |
android:layout_toLeftOf | 在某元素的左边 |
android:layout_toRightOf | 在某元素的右边 |
Ø所谓绝对布局(AbsoluteLayout),是指屏幕中所有控件的摆放由开发人员通过设置控件的坐标来指定,控件容器不再负责管理其子控件的位置。由于子控件的位置和布局都是通过坐标来指定,因此AbsoluteLayout类中没有特殊的属性和方法。
Ø可以通过android:layout_x和android:layout_y属性可以设置视图的横坐标和纵坐标的位置。
表格布局
Ø在TableLayout布局中,一个列的宽度由该列中最宽的那个单元格指定,而表格的宽度是由父容器指定的。在TableLayout中,可以为列设置三种属性:
ØShrinkable:如果一个列被标识为Shrinkable,则该列的宽度可以进行收缩,以使表格能够适应其父容器的大小。
ØStretchable:如果一个列被标识为Stretchable,则该列的宽度可以进行拉伸,以使填满表格中的空闲空间。
ØCollapsed:如果一个列被标识为Collapsed,则该列会被隐藏
Ø注意:一个列可以同时具有Shrinkable属性和Stretchable属性,在这种情况下,该列的宽度将任意拉伸或收缩以适应父容器
ØTableLayout继承自LinearLayout类,除了继承来自父类的属性和方法,TableLayout类中还包含表格布局所特有的属性和方法,如下表:
Ø注意:TableLayout中所谓的列序号是从0开始计算的。setShrinkAllColumns和setStretchAllColumns实现的功能是将表格中的所有列设置为Shrinkable或Stretchable。
-----感谢老罗的奉献。
相关文章推荐
- Android中UI控件的详细介绍(二)—— 非布局控件总览
- Android的UI布局以及常用属性
- 02、Android 常用布局及基本UI控件
- 基于android布局中的常用占位符介绍
- Android常用布局——相对布局RelativeLayout各属性介绍
- Android常用布局的介绍
- Android之常用布局介绍
- android布局常用属性介绍
- Android 系统 UI - SystemUI之功能介绍和UI布局实现
- Android基础之常用布局介绍
- android 常用UI 之2--几种主要布局要点
- Android-UI开发之常用布局
- android 常用布局LinearLayout以及RelativeLayout介绍
- android UI布局优化的常用工具
- Android常用布局样式介绍
- Android 基础:常用布局 介绍 & 使用(附 属性查询)
- 请介绍下Android中常用的五种布局
- Android常用布局样式及LayoutInflater介绍
- 跟我学android-android常用布局介绍
- android常用布局介绍