Android常用UI布局的介绍


Ø为了适应各种界面风格,Android提供了5种布局,这5种布局分别是:
FrameLayout(框架布局)、LinearLayout(线性布局)、RelativeLayout(相对布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局)等
常用属性介绍
ØAndroid表示单位长度的方式通常有三种表示方式。
Øpx:表示屏幕实际的象素。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。
Ødp(dip): 是屏幕的物理尺寸。大小为1英寸的1/72。
Øsp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。




线性布局
属性
描述
wrap_content                    
 填满父控件的空白
fill_parent
match_parent
表示大小刚好足够显示当前控件里的内容Androidfill_parentmatch_parent是一样的。
Android2.2中启动match_parent,不用fill_parent

Ø layout_weight 用于给一个线性布局中的诸多视图的重要度赋值。
Ø      所有的视图都有一个 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_xandroid:layout_y属性可以设置视图的横坐标和纵坐标的位置。
表格布局
Ø TableLayout 布局中,一个列的宽度由该列中最宽的那个单元格指定,而 表格的宽度是由父容器指定的。在 TableLayout 中,可以为列设置三种属性
Ø Shrinkable :如果一个列被标识为 Shrinkable ,则该列的宽度可以进行收缩 ,以使表格能够适应其父容器的大小。
Ø Stretchable :如果一个列被标识为 Stretchable ,则该列的宽度可以进行拉伸 ,以使填满表格中的空闲空间。
Ø Collapsed :如果一个列被标识为 Collapsed ,则该列会被隐藏
Ø 注意:一个列可以同时具有 Shrinkable 属性和 Stretchable 属性,在这种情况 下,该列的宽度将任意拉伸或收缩以适应父容器
ØTableLayout继承自LinearLayout类,除了继承来自父类的属性和方法,TableLayout类中还包含表格布局所特有的属性和方法,如下表:
Ø注意:TableLayout中所谓的列序号是从0开始计算的。setShrinkAllColumnssetStretchAllColumns实现的功能是将表格中的所有列设置为ShrinkableStretchable

-----感谢老罗的奉献。

猜你喜欢

转载自blog.csdn.net/xieshangjian/article/details/10200193