我有几个复选框和 2 个计数器...counter1
使用以下代码计算有多少个复选框被选中
if (isChecked) {
counter++;
} else {
counter--;
}
这就像一个魅力,但现在我想要 counter2
跟踪属于“绿色”组的选中复选框...例如复选框 1、2、4 和 7 属于“绿色”组和复选框 3、5、6、8 不是。
if (chk1.isChecked() || chk2.isChecked() || chk4.isChecked() || chk7.isChecked()) {
counter2++;
}
我尝试使用另一个 if else
来查看有多少“绿色”组被选中
但是当我使用
System.out.println(counter2);
然后我总是得到 counter1
的值。
为什么会这样?是因为 counter1
检查所有选中的框并否决 counter2
吗?
最佳答案
int counter2 = 0; // reset counter
for (Checkbox chk : allCheckboxes)
{
if (chk.isChecked() && isGreen(chk)) {
counter2++;
}
}
//...
和实用方法
private boolean isGreen(Checkbox chk)
{
// return true is checkbox is green
}
关于java - 令人困惑的复选框问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12107791/