LayoutParams params = new LayoutParams(width,height);
然后使用RelativeLayout relativeLayout.setLayoutparams(params);就可以在程序中控制RelativeLayout的宽和高了。
不过需要注意的是,LayouParams的导入包的问题,导入的时候会提示很多,一定要选择RelativeLayout.LayoutParams这个才正确,否则出现ClassCastExcetpion异常.
设置RelativeLayout的宽高:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.grid_item);
relativeView=(RelativeLayout)findViewById(R.layout.grid_item);
new Handler().postDelayed(new Runnable(){
@Override
public void run(){
relativeView.setLayoutParams(new RelativeLayout.LayoutParams(100,200));
}
}, 1000); ///延时,或不可行
}
可行方法:
RelativeLayout.LayoutParams linearParams = (RelativeLayout.LayoutParams)mScrollView.getLayoutParams();
linearParams.height = middleHeight;
mScrollView.setLayoutParams(linearParams);
设置的控件RelativeLayout 中,如果是 LinerLayout,或者是FrameLayout,做相应改动即可!