不积跬步无以至千里
之前没有动态设置过一个控件的参数,大部分都是通过xml,"预置"了一个控件的参数,然后去加载显示,今天就有一个需求牵扯到需要动态设置某个控件的Margin即外边距,来改变控件的高度,来改变控件的位置(这里是LinearLayout).
代码如下:
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
if(isEnabled){
layoutParams.setMargins(0,100,0,60);
}else{
layoutParams.setMargins(0,1076,0,60);
}
mView.setLayoutParams(layoutParams);
如代码,通过创建LinearLayout.LayoutParams 对象,向里面填充参数,然后把这个对象传给控件,即可.