android 动态设置控件的前提条件

来源:互联网 发布:mysql 按照字段排序 编辑:程序博客网 时间:2024/06/05 19:28

简单的举个栗子说明一下:最外层有ReLativeLayout A,里面有两个LinearLayout B、C,而B中又有一个一个FrameLayout D。如果要在代码里设置B的LayoutParams,B的LayoutParams要为RelativeLayout.LayoutParams。

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);B.setLayoutParams(params);

而D要设置的话,需要:

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, 0);params.weight = 8;D.setLayoutParams(params);

如果设置不正确将会引起java.lang.ClassCastException: android.widget.RelativeLayoutLayoutParamscannotbecasttoandroid.widget.AbsListViewLayoutParams错误

0 0
原创粉丝点击