我有一个带有10个复选框的布局。所有复选框都通过代码添加。现在我想知道是否有任何可用于布局的监听器来检查选择了多少个复选框。例如:当我选择4个复选框时,我想知道选中了多少和哪些复选框。
答案 0 :(得分:1)
试试这个,取自here:
ckBox.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (ckBox.isChecked()) {
mDisplayHelp = true;
} else {
mDisplayHelp = false;
}
SharedPreferences.Editor editor = prefs.edit(); editor.putBoolean("checkboxPref", mDisplayHelp); // Don't forget to commit your edits!!! editor.commit(); // Optional part
}
});
或者您可以像这样检查每一个:
checkBox = (CheckBox) findViewById(R.id.chkbox);
if (checkBox.isChecked()) {
// Some wild things happen here
} else {
// Okay ...
}
答案 1 :(得分:0)
你可以添加像CheckBox cb = new CheckBox(this);
cb.setText("Dynamic Checkbox " + i);
cb.setId(i+10);
yourlayout.addView(cb);
这样的复选框,你必须通过调用setOnClickListerner(this)来设置他们的监听器;这里。它将解决您的问题。