异常处理java.lang.ClassCastException:android.widget.LinearLayout$LayoutParams

开发一个SDK,由于用到了Activity,所以在Activity中使用动态布局,不使用XML进行布局,在GradView,ListView中的适配器使用了LinearLayout.LayoutParams导致出现这个错误。

记录一下:

修改LinearLayout.LayoutParams 为android.widget.AbsListView.LayoutParams 这个即可。

问题就出在这里,原来是LayoutParams导错包了,我需要在GridView,ListView的适配器中添加图片,此时的LayoutParams应该属于GridView

所以得导android.widget.AbsListView.LayoutParams包。至于为什么导这个包,因为GridView是继承AbsListView来的。

现在再回去看错误代码就全明白了,不能把不同类型的Params强制转换。如果你也出现类似的错误,赶紧检查下是不是倒错相应的Params包了吧

你可能感兴趣的:(异常处理java.lang.ClassCastException:android.widget.LinearLayout$LayoutParams)