64ListView中item中有CheckBox带来的选择状态混乱的解决

来源:互联网 发布:淘宝 苏宁易购旗舰店 编辑:程序博客网 时间:2024/05/20 10:23

如图:当选择第二个条目的时候,往下翻:



看到下面有的居然自己勾上了:



再网上翻,发现上面的有的也自己勾上了:



第一次遇到这个问题(手机管家项目第一次遇到这个问题,这里是拿《第一行代码》复习了),感觉好奇怪,甚至感觉有点不可思议。但是静下来想想,不过是因为复用convertView带来的问题。

解决方式:

第一步:在bean中新增 一个filed:checked,用来记录CheckBox的选择与否。



第二步,在onItemClickListener监听器中,使用view.getTag()取出ViewHolder.然后进行状态设置。(这里禁用了CheckBox的焦点,CheckBox生来就是被点击,所以如果不禁用它,条目的事件无法响应,这里做的处理是,点击条目的任何位置,CheckBox都会改变状态)



第三步:在adapter中设置CheckBox的状态:



完整的代码我就不上了,交流QQ:619189810

0 0
原创粉丝点击