原文地址:
http://www.eoeandroid.com/forum.php?mod=viewthrea
d&tid=182293
android 的listview 内部item的布局包含checkbox控件时,会遇到常见的问题: 1.checkbox无法选择; 2.选择的checkbox后滑动listview内容时会checkbox选择的值会刷新成原来状态值(即没选中); 3.选择listview所有checkbox值之后,只能获取当前可见的checkbox的值,向后滑动选择的值无法获取。 解决以上问题可以采取以下方法: 1.设置checkbox的属性值为:android:focusable=”false” ,防止焦点独占,解决checkbox无法选择的问题。 2.重写Adapter,重写getView方法; 3.重写Adapter的getView方法时,为每个checkbox添加事件响应并记录选择状态,通过获取获取状态记录值获取所有选择的checkbox值。 需要注意的是第三点,在重写getView方法时,不要判断convertView == null,如果判断convertView == null再实例化相关的控件,则刷新的是局部控件(这个尚需要观点有待论证)。 以下的程序代码就是围绕以上三点编写的例子 ![]() |