第一步:
第二步:
---------------------------------------------------------------------------------
说明:
由于在 listview 中,为了提高性能,会复用缓存的 view ,即方法 getView 中的参数 convertView,
所以如果按照常规思维去获取 checkbox 的对象,达到获取 checked 属性的目的是不现实的,
这里 可以使用 hashmap 记录每一个 checkbox 的值,在 getView 方法中设置通过 hashmap 间接
设置
checkbox 的值,当你想 选中 或 不选中 的时候,只需要 改变 hashmap 的值即可。
同理:
全选 与 反选 也是这个道理。
只需要 改变 hashmap 的值即可。
PS:android 官方包 中 提供了 替代 hashmap 的高效方法,
可参考:
Android应用性能优化之使用SparseArray替代HashMap
转载请注明原文地址: https://ju.6miu.com/read-675139.html