- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content">
- <FrameLayout
- android:id="@+id/FrameLayout01"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
- </LinearLayout>
- 若想在代码中动态改变FrameLayout的大小,应该这样写:
- FrameLayout frameLayout=(FrameLayout) convertView.findViewById(R.id.FrameLayout01);
- //注意这里是通过父类获取 new LinearLayout.LayoutParams,而使用时是使用在FrameLayout上
- LinearLayout.LayoutParams ff=new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, height);
- frameLayout.setLayoutParams(ff);
如果不通过上面的方式设置的话,会出现
Caused by: java.lang.ClassCastException:android.widget.LinearLayout$LayoutParams