android.widget.FrameLayout$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams


java.lang.ClassCastException: android.widget.FrameLayout$LayoutParams cannot be cast to android.widg

         有时候需要在在代码中设置LayoutParams,自己为一个FrameLayout设置LayoutParams的时候,遇上如题问题,

          简单的举个栗子说明一下:最外层有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);

可以解决了,分享给大家


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM