2.2 常用的UI布局
布局本身是不能显示出任何数据, 它可以包含一些子视图, 并控制子视图的布局
常用的Layout
-
LinearLayout
-
RelativeLayout
-
FrameLayout
-
ListView(后面讲)
-
GridView(后面讲)
2.2.1 LinearLayout
线性布局: 用来控制其子View以水平或垂直方式展开显示
重要属性:
orientation(方向)
layout_weight(权重)
理解LinearLayout权重
layout_weight(权重)的值
-
=0(默认值): 指定多大空间就占据多大的空间
-
>0: 将父视图中的可用空间进行分割, 值越大权重就越大, 占据的比例就会越大
Layout_weight的使用场景
-
将布局的宽度或高度平均分成几个等份
-
垂直方向上占用中间所有空间 或 水平方向上占用中间所有空间
2.2.2 RelativeLayout
相对布局: 用来控制其子View以相对定位的方式进行布局显示
相对布局是最灵活, 最强大,也是学习难度最大的布局
相对布局相关属性比较多:
-
兄弟视图之间: 同方向对齐, 反方向对齐
-
与父视图之间: 同方向对齐, 居中
2.2.3 FrameLayout帧布局中的每一个子View都代表一个画面,默认以屏幕左上角作为( 0,0 )坐标,按定义的先后顺序依次逐屏显示 , 后面出现的会覆盖前面的画面,通过子View的android:layout_gravity 属性来指定子视图的位置
2.3 常用视图标签属性
属性的划分
针对任何View的属性
常用的最基本属性
内边距属性
padding外边距属性
margin只针对RelativeLayout的属性
反方向对齐属性
to/above/below同方向对齐属性
align相对父视图的属性
alignparent/center只针对LinearLayout的属性
权重属性 weight
方向属性 oritation
常用基本属性
内边距与外边距
相对兄弟视图定位
相对父视图定位