在Android中检查多个复选框

时间:2011-01-14 10:14:39

标签: android checkbox

CheckBox checkOne = (CheckBox) findViewById(R.id.checkOne);
checkOne.setSelected(true);

CheckBox checkTwo = (CheckBox) findViewById(R.id.checkTwo);
checkTwo.setSelected(true);

CheckBox checkThree = (CheckBox) findViewById(R.id.checkThree);
checkThree.setSelected(true);

我使用上面的代码来检查或取消选中多个复选框。

我的问题是,有什么方法可以立刻获得所有复选框吗? (我不想使用数组) 例如,我的复选框位于LinearLayout中,因此我可以将所有复选框作为LinearLayout的子项吗?

1 个答案:

答案 0 :(得分:6)

如果父级LinearLayout包含复选框,则可以执行以下操作:

//ll is the LinearLayout holding the children
for(int i = 0; i < ll.getChildCount(); i++) {
    ((CheckBox)ll.getChildAt(i)).setChecked(true);
}

如果您在LinearLayout中有更多观看次数,则可以添加如下支票:

for(int i = 0; i < ll.getChildCount(); i++) {
    View v = ll.getChildAt(i);
    if(v instanceof CheckBox) {
        ((CheckBox)v).setChecked(true);
    }
}