Android有Layout:FrameLayout,LinearLayout,TableLayout,RelativeLayout,AbsoluteLayout
..................................................................................................................................................................
Layout中Item一般所共有的XML属性:
(1)layout_width
(2)layout_height
注: (1)和(2)用来确定放入Layout中的View的宽度和高度:它们的可能取值为fill_parent,wrap_content或者固定的像素值
(3)layout_marginLeft --->(3)’paddingLeft
(4)layout_marginTop --->(4)’paddingTop
(5)layout_marginRight --->(5)’paddingRight
(6)layout_marginBottom --->(6)’paddingBottom
(补)layout_margin --->(补)’padding
注:(3)(4)(5)(6)是放入Layout中的View期望它能够和Layout的边界或者其他View之间能够相距一段距离
(3)’(4)’(5)’(6)’是放入View中的内容期望它能够与本身View之间能够相距一段距离
(7)layout_gravity
注:(7)用来确定View在Layout中的停靠位置
..................................................................................................................................................................
FrameLayout是最简单的Layout
..................................................................................................................................................................
LinearLayout还会有:
(8)layout_weight
注: (8)用于在LinearLayout中把所有子View排布之后的剩余空间按照它们的layout_weight(比例)分配给各个拥有这个属性的View。
..................................................................................................................................................................
TableLayout的行TableRow是一个横向的(horizontal)的LinearLayout
..................................................................................................................................................................
Android RelativeLayout 属性
// 相对于给定ID控件
Android:layout_above 将该控件的底部置于给定ID的控件之上;
Android:layout_below 将该控件的底部置于给定ID的控件之下;
Android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;
Android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;
Android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;
Android:layout_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐;
Android:layout_alignBottom 将该控件的底部边缘与给定ID的底部边缘对齐;
Android:layout_alignLeft 将该控件的左边缘与给定ID的左边缘对齐;
Android:layout_alignRight 将该控件的右边缘与给定ID的右边缘对齐;
// 相对于父组件
Android:layout_alignParentTop 如果为true,将该控件的顶部与其父控件的顶部对齐;
Android:layout_alignParentBottom 如果为true,将该控件的底部与其父控件的底部对齐;
Android:layout_alignParentLeft 如果为true,将该控件的左部与其父控件的左部对齐;
Android:layout_alignParentRight 如果为true,将该控件的右部与其父控件的右部对齐;
// 居中
Android:layout_centerHorizontal 如果为true,将该控件的置于水平居中;
Android:layout_centerVertical 如果为true,将该控件的置于垂直居中;
Android:layout_centerInParent 如果为true,将该控件的置于父控件的中央;
// 指定移动像素
Android:layout_marginTop 上偏移的值;
Android:layout_marginBottom 下偏移的值;
Android:layout_marginLeft 左偏移的值;
Android:layout_marginRight 右偏移的值;
example:
Android:layout_below = "@id/***"
Android:layout_alignBaseline = "@id/***"
Android:layout_alignParentTop = true
Android:layout_marginLeft = “10px”
..................................................................................................................................................................
补充:
1.android:paddingLeft与android:layout_marginLeft的区别:
padding margin都是边距的含义,关键问题得明白是什么相对什么的边距.
padding:
padding是控件的内容相对控件的边缘的边距.
layout_margin:
layout_margin是控件边缘相对父空间的边距.
2.android gravity和layout_gravity区别
android:gravity:
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靠右
..................................................................................................................................................................
本人新手,材料来自网络