复选框限制android工作室

我如何把限制检查列表选择,我只想要四个作为最大选择。我试着按照你给出的一些以前的解决方案,但他们无法工作。您的帮助将不胜感激复选框限制android工作室

enter code here 

公共无效selectItem1(查看视图){

boolean Checked = ((CheckBox) view).isChecked(); 

switch (view.getId()) {

case R.id.cbMath:

if (Checked) {

selection1.add("Math");

} else {

selection1.remove("Math");

}

break;

case R.id.cbEnglish:

if (Checked) {

selection1.add("English");

} else {

selection1.remove("English");

}

break;

case R.id.cbChemistry:

if (Checked) {

selection1.add("Chemistry");

} else {

selection1.remove("Chemistry");

}

break;

case R.id.cbAccounts:

if (Checked) {

selection1.add("Accounts");

} else {

selection1.remove("Accounts");

}

break;

case R.id.cbG_M_D:

if (Checked) {

selection1.add("G.M.D");

} else {

selection1.remove("G.M.D");

}

break;

}

}

public void final_selection1(View view) {

String last_Subjects_selection1 = "";

for (String selections : selection1) {

last_Subjects_selection1 = last_Subjects_selection1 + selections + "\n";

}

Subjects.setText(last_Subjects_selection1);

Subjects.setEnabled(true);

}

回答:

所以,你必须设置“setOnCheckedChangeListener”的复选框,并创建一个全局变量,以保持检查的项目的当前计数。如果达到最大值不要设置它检查。

回答:

下面是开关的一些代码,它几乎是一样的复选框:

private final int mMaxCheckedSwitches = 3; 

private int mCurrentCheckedSwitches = 0;

@Override

public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

if (b && mCurrentCheckedSwitches >= mMaxCheckedSwitches) {

compoundButton.setChecked(false);

return;

}

if (b) {

mCurrentCheckedSwitches += 1;

}

}

以上是 复选框限制android工作室 的全部内容, 来源链接: utcz.com/qa/257164.html

回到顶部