这个需求来自于动态向LinearLayout中添加子View,在使用权重的情况下,原先的layout_weight值肯定是要修改的

所以便需要动态修改layout_weight。


原理很简单,就是借助LayoutParams给这个子View设置weight即可。

代码:


mView.setLayoutParams(new LinearLayout.LayoutParams(0,
LinearLayout.LayoutParams.MATCH_PARENT, 2f));


参数说明(第三行):

Android 动态修改layout_weight_修改layout_weight

第一个参数是width,第二个参数是height,第三个参数是weight

如果orientation是vertical,width就是0,如果orientation是horizontal,height就是0