ListView ClassCastException:
2013-11-23 23:27
176 查看
原文http://blog.sina.com.cn/s/blog_6261f86901019h9g.html
今天写一个ListView,用的是指定义的布局,这个ListView的headerView也是自定义布局,运行报错:
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
网上查询,然后通过同事帮助才明白:如果你要将一个view添加到另一个布局中,你必须设定该View的布局参数为其父类所使用的布局参数类型。即要在代码中动态改变某组件的高度,其布局参数类型应该是其父类所使用的布局参数类型。
参考我的代码,因为ListView的headerView的LayoutParams参数没有改为和ListView一致;
改为
ListView.LayoutParams LP=new ListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
后正常显示。
今天写一个ListView,用的是指定义的布局,这个ListView的headerView也是自定义布局,运行报错:
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
网上查询,然后通过同事帮助才明白:如果你要将一个view添加到另一个布局中,你必须设定该View的布局参数为其父类所使用的布局参数类型。即要在代码中动态改变某组件的高度,其布局参数类型应该是其父类所使用的布局参数类型。
参考我的代码,因为ListView的headerView的LayoutParams参数没有改为和ListView一致;
改为
ListView.LayoutParams LP=new ListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
后正常显示。
相关文章推荐
- ios文件操作
- CFindFile的用法
- 关键路径——杭电 4109
- Python--如何组织项目
- ThingPHP学习笔记
- 面向对象一点思考
- 笔记本网络连接状况未知,依赖服务或组无法启动
- 【转】C++及java在内存分配上的区别
- 关于行和列的算法
- Web安全之CSRF
- (work and tools)linux压缩格式简析
- 总结几种C#窗体间通讯的处理方法
- Deep Learning学习网站
- 修改Ubuntu和WIN7双系统的默认启动系统
- 安卓基础学习_ Android数据存储与IO
- XML结构文件的读写
- list与ArrayList的区别
- 记录下FMDB的简单使用
- 黑马程序员-----程序员之路_____银行业务调度系统
- MongoDB实战(10)Replica Sets 副本集(下)