LinearLayout 又称作线性布局,是一种非常常用的布局。正如它名字所描述的一样,这个布局会将它所包含的控件在线性方向上依次排列。
说几个LinearLayout常用的属性
1.layout_gravity 设置布局中控件的位置
top 上 bottom 下 left 左 right 右
center_vertical 垂直居中
center_horizontal 水平居中
center 居中
。。。。
2.weight(权重)属性
用来设置占布局所占布局得的比重
(1)layout_width都为0时 按照所设置的比重来分配权重
比如:三个控件 1 2 3 weight分比为1、2、3 layout_width = "0dp"
则会将屏幕的大小分为1+2+3=6份 三个控件分别占布局的1/6 2/6 3/6
(2)layout_width都为warp_content时 这种情况下和上边的情况一样
(3)layout_width为match_parent时是最复杂的一种情况
因为此时控件所占的所有宽度大于容器的宽度 此时要计算每个空间所占的比例
计算公式:
额外的空间=手机的宽度(高度)-所有控件的宽度(高度)
控件的宽度(高度)=控件的width(height)值+(该控件的weight值/所有控件的weight的和)×额外的空间
以上边的情况为例子:
设 match_parent为x
额外空间 = x - 3x = -2x
控件1宽度 = x+ 1/6*(-2x) = 4/6x =1/3x
所以控件1占屏幕的1/3
3.添加分割线
(1)通过view添加
<View
android:layout_width="match_parent"
android:layout_height="1px"
android:background="#000000" />
(2)通过背景图片添加
android:divider="@drawable/ktv_line_div"
android:showDividers="middle"
android:dividerPadding="10dp"
1)android:divider设置作为分割线的图片
2)android:showDividers设置分割线的位置,none(无),
begining(开始),end(结束),middle(每两个组件间)
3)dividerPadding设置分割线的Padding
LinearLayout及其常用属性
最新推荐文章于 2024-01-18 17:24:38 发布