在做含有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);
}
}