1

除此之外setOnCheckedChangeListener,还有什么方法可以检查用户是否实际触摸了屏幕并选中/取消选中checkbox.

我问这个问题是因为setOnCheckedChangeListener即使用户没有执行检查,我的流程也会进入内部。

4

3 回答 3

2

这样你就可以有一个布尔值来查看你的复选框是否被选中。

在您的 java 代码中使用它。

CheckBox cb = findviewById(R.id.checkbox1);
if(cb.isChecked()){
          //it is checked 
}
//else it is not checked
于 2012-07-16T13:56:56.857 回答
1

取一个布尔标志。示例:boolean realyCkecked = false;

In setOnCheckedChangeListener:
If(realyCkecked == false) {
    realyCkecked = true;
}

然后检查 realyCkecked 是真/假

If(realyCkecked) {
    System.out.println("Checked Atleast Once.");
} else {
    System.out.println("Not checked yet.");
}

因此,您甚至可以知道任何时候 CheckBox 是否被选中。

于 2012-07-16T13:56:28.537 回答
0

在您的setOnCheckedChangeListener()方法中,您可以使用一个计数器并增加它。之后,在您想使用它的地方,将其与之前的值进行比较。

于 2012-07-16T14:26:18.530 回答