Layout的setWeightSum函数使用方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/thomassamul/article/details/87863176

问题:

在xml里面设置控件的android:layout_weight="1",LinearLayout的setWeightSum函数,参数设置为1,但是效果没有出来。


解决方法1:

setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT, 1));
1就是weight

解决方案2:

当View的width、height为wrap_content或者0dp/px/sp时,若设定了weight,那么layout就会从剩余的未确定的layout中,根据weight的总和,也就是weightSum来计算需要为这样的View设置多少长宽。
width = leftWidth * weight / weightSum;
height = leftHeight * weight / weightSum;
另外weight的计算和布局,在LinearLayout中Onlayout和OnMeasure函数。

展开阅读全文

没有更多推荐了,返回首页