什么是android:布局
我不明白如何使用这个属性。 谁能告诉我更多关于它的事吗?
使用layout_weight
可以指定多个视图之间的大小比例。 比如你有一个MapView
和一个table
,它应该向地图显示一些额外的信息。 地图应该使用3/4的屏幕,桌子应该使用1/4的屏幕。 然后,将map
的layout_weight
设置为3,将table
的layout_weight
设置为1。
为了得到它的工作,你还必须设置高度或宽度(取决于你的方向)为0px。
简而言之, layout_weight
指定要分配给视图的多少额外空间。
LinearLayout支持为每个孩子分配权重。 此属性为视图指定了“重要性”值,并允许其展开以填充父视图中的任何剩余空间。 视图的默认权重为零。
计算分配子女之间的任何剩余空间
一般来说,公式是:
分配给孩子的空间=(孩子的个人体重)/(线性布局中每个孩子的体重总和)
例1
如果有三个文本框,其中两个声明权重为1,而第三个权重不为0,则剩余空间分配如下:
第一个文本框= 1 /(1 + 1 + 0)
第二个文本框= 1 /(1 + 1 + 0)
第3个文本框= 0 /(1 + 1 + 0)
例2
假设我们在水平行中有一个文本标签和两个文本编辑元素。 该标签没有指定layout_weight
,因此占用了渲染所需的最小空间。 如果两个文本编辑元素中的每一个的layout_weight
设置为1,则父级布局中的剩余宽度将在它们之间平均分配(因为我们声称它们同样重要)。
计算:
第一个标签= 0 /(0 + 1 + 1)
第二个文本框= 1 /(0 + 1 + 1)
第三个文本框= 1 /(0 + 1 + 1)
如果第一个文本框的layout_weight
为1,而第二个文本框的layout_weight
为2,那么剩余空间的三分之一将被赋予第一个,而第二个文本框的第三个将被赋予第二个(因为我们声称第二个更重要)。
计算:
第一个标签= 0 /(0 + 1 + 2)
第二个文本框= 1 /(0 + 1 + 2)
第3个文本框= 2 /(0 + 1 + 2)
源文章
添加到其他答案,让这个工作最重要的是将布局宽度(或高度)设置为0px
android:layout_width="0px"
否则你会看到垃圾
链接地址: http://www.djcxy.com/p/91383.html