在做含有CheckBox的Adapter的可能会遇到的问题:
1.、ListView item中加入checkbox后onListItemClick 事件无法触发。
原因:checkbox的优先级高于ListItem于是屏蔽了ListItem的单击事件。
解决方案:设置checkbox的android:focusable="false"
2、选择其中的checkbox,当滚动ListView的时候,会出现一些Checkbox选择错位的现象,
原因:为记住Checkbox的选择状态
解决方案:当选择Checkbox的时候,记下其状态,然后在getView方法中进行设置
代码如下:
- Object b = (Object ) getItem(position);
- if (b != null) {
- if(selectedSet.contains(b)){
- viewHolder.checkBox.setChecked(true);
- }else{
- viewHolder.checkBox.setChecked(false);
- }
- }
本文介绍了在使用ListView显示带有CheckBox的项时可能遇到的问题及解决方案,包括如何避免CheckBox导致的点击事件丢失,以及如何保持CheckBox的选择状态不因ListView滚动而错位。
5065

被折叠的 条评论
为什么被折叠?



