Android:只需单击一下按钮,即可检查/取消选中listview中的所有复选框的代码

时间:2013-05-22 03:35:01

标签: android

当您使用带有SimpleCursorAdapter的listview

时,如何通过单击按钮来检查/取消选中列表视图中的所有复选框

2 个答案:

答案 0 :(得分:6)

for(int i=0; i < list.getChildCount(); i++){
    ViewGroup item = (ViewGroup)list.getChildAt(i);
    CheckBox checkbox = (CheckBox)item.findViewById(R.id.checkbox_id);
    checkbox.setChecked(true);
}

此处ViewGroup是您用于列表项的ViewGroup

答案 1 :(得分:0)

尝试使用此代码::

private void removeAllChecks(ViewGroup vg) {
    View v = null;
    for(int i = 0; i < vg.getChildCount(); i++){
    try {
        v = vg.getChildAt(i);
        ((CheckBox)v).setChecked(false);
    }
    catch(Exception e1){ //if not checkBox, null View, etc
        try {
        removeAllChecks((ViewGroup)v);
        }
        catch(Exception e2){ //v is not a view group
        continue;
        }
    }
    }

}

将列表对象传递给它。只要避免真正冗长而复杂的列表。