- 常见错误
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams
出现这个错误的原因是因为我们获取控件LayoutParams方法出错
- 通过父控件确定获取LayoutParams方法
比如父控件是LinearLayout获取方法为
LinearLayout.LayoutParams setP = (LinearLayout.LayoutParams) Layout.getLayoutParams();
设置代码为
Layout=(RelativeLayout) view.findViewById(R.id.videoP);
// LinearLayout.LayoutParams setP=new LinearLayout.LayoutParams(0, 0);
LinearLayout.LayoutParams setP = (LinearLayout.LayoutParams) Layout.getLayoutParams();
setP.height=700;
setP.width=500;
setP.leftMargin=100;
Layout.setLayoutParams(setP);
如果父控件为RelativeLayout获取方法为
RelativeLayout.LayoutParams setP= (RelativeLayout.LayoutParams) Layout.getLayoutParams();
设置代码为
Layout=(RelativeLayout) view.findViewById(R.id.rela2);
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) Layout.getLayoutParams();
layoutParams.setMargins(100, 100,0,0);
Layout.setLayoutParams(layoutParams);