现在的位置: 首页 > 综合 > 正文

android 中 weight

2013年02月20日 ⁄ 综合 ⁄ 共 748字 ⁄ 字号 评论关闭

lanyout_weight:用于给一个线性布局中的诸多视图的重要度赋值,默认为零,数值越小,重要度越高

其实很简单,weight本来的意思就是重量,即这个属性所代表的是重要程度,而不是比例 

如果三个view横列,前两个view的wieght是1,第三个是默认值0。可见第三个view的权weight最低,那么第三个view就只会占用自己内容所需的宽度,剩下的宽度会被前两个view平分。 

如果第三个view的wieght是2,那么前两个view就只占据自己内容所需的宽度,第三个会占据剩下所有空间。 

若赋一个高于零的值,则将父视图中的可用空间分割,分割大小具体取决于每一个视图的layout_weight值以及该值在当前屏幕布局的整体layout_weight值和在其它视图屏幕布局的layout_weight值中所占的比率而定。举个例子:比如说我们在 水平方向上有一个文本标签和两个文本编辑元素。该文本标签并无指定layout_weight值,所以它将占据需要提供的最少空间。如果两个文本编辑元素每一个的layout_weight值都设置为1,则两者平分在父视图布局剩余的宽度(因为我们声明这两者的重要度相等)。如果两个文本编辑元素其中第一个的layout_weight值设置为1,而第二个的设置为2,则剩余空间的三分之二分给第一个,三分之一分给第二个(数值越小,重要度越高)。 

比如,一个不写,一个写1,一个写2,

那么不写的就是自己那么大

写1的就是剩下空间的 1/(1+2)

写2的就是剩下空间的 2/(1+2)

http://www.cnblogs.com/skynet/archive/2010/06/06/1752616.html

http://hano.iteye.com/blog/731027

抱歉!评论已关闭.