android布局方式有5种:
FrameLayout,LinearLayout,TableLayout,RelativeLayout,AbsoluteLayout。
1.几种Layout中Item所共有的XML属性:(Item的属性)
(1).layout_width
(2).layout_height
(3).layout_marginLeft: 是控件的内容相对控件的边缘的边距. android:padding:是控件边缘相对父控件间的边距
(4).layout_marginTop
(5).layout_marginRight
(6).layout_marginBottom
(7).layout_gravith: 是本元素相对于父元素的重力方向
FrameLayout是最简单的Layout,就只具有这些属性。
对于LinearLayout多出一个属性:
(8).layout_weight: 设置权重值,用来确定该控件占用多大的显示空间
TableLayout的行TableRow是一个横向的(horizontal)的LinearLayout.
RelativeLayout有16个align相关的XML属性:
(9).layout_above 将该控件的底部置于给定ID的控件之上;
(10).layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;
(11).layout_alignLeft 将该控件的左边缘与给定ID的左边缘对齐;
(12).layout_alignBotton 将该控件的底部边缘与给定ID的底部边缘对齐;
(13).layout_alignParentBottom 如果为true,将该控件的底部与其父控件的底部对齐;
(14).layout_alignParentLeft 如果为true,将该控件的左部与其父控件的左部对齐;
(15).layout_alignParentRight 如果为true,将该控件的右部与其父控件的右部对齐;
(16).layout_alignParentTop 如果为true,将该控件的顶部与其父控件的顶部对齐;
(17).layout_alignRight 将该控件的右边缘与给定ID的右边缘对齐;
(18).layout_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐;
(19).layout_below 将该控件的底部置于给定ID的控件之下;
(20).layout_centerHorizontal 如果为true,将该控件的置于水平居中;
(21).layout_centerInParent 如果为true,将该控件的置于父控件的中央;
(22).layout_centerVertical 如果为true,将该控件的置于垂直居中;
(23).layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;
(24).layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;
补充:
1.android:paddingLeft与android:layout_marginLeft的区别:
padding margin都是边距的含义,关键问题得明白是什么相对什么的边距.
padding: padding是控件的内容相对控件的边缘的边距.
layout_margin: layout_margin是控件边缘相对父空间的边距.
android:gravity:
是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text在view的靠左,靠右等位置.
以button为例,android:gravity=right则button上面的文字靠右
android:layout_gravity:
android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左、靠右等
位置就可以通过该属性设置.以button为例,android:layout_gravity=right则button靠右
3. android:layout_weight
android:layout_weight :(线性布局内子元素对未占用空间【水平或垂直】分配权重值,其值越小,权重越大
前提是子元素 设置了 android:layout_width = "fill_parent" 属性(水平方向)
或 android:layout_height = "fill_parent" 属性(垂直方向)
4.android:gravity和android:layout_gravity的区别:
举例说明比如Button
android:layout_gravity 表示按钮在界面上的位置。
android:gravity表示button上的字在button上的位置