在单击时尝试检查和取消选中单选按钮时遇到问题。
我想做的是,当负载活动时,默认情况下单选按钮设置为选中。当用户按下选中的单选按钮时,我将单选按钮设置为取消选中并清空textview。然后,当用户再次按下单选按钮时,我将其设置为选中状态并在textview中设置了一些文本。这是我的代码:
@Click(R.id.radioButtonEmail)
void radioButtonEmailClicked(View v) {
if(radioButtonEmail.isChecked() == true){
radioButtonEmail.setChecked(false);
editTextEmail.setText("");
}else {
radioButtonEmail.setChecked(true);
editTextEmail.setText("TEST");
}
}
但是,这仅在我尝试取消选中单选按钮时才有效。将其设置为false后,当我尝试再次检查它时,它将不起作用。有任何想法吗?谢谢!
答案 0 :(得分:2)
对于您所看到的行为,我没有确切的解释,但是您的逻辑对我而言很不对。我认为您打算这样做:
@Click(R.id.radioButtonEmail)
void radioButtonEmailClicked(View v) {
if (radioButtonEmail.isChecked()) {
editTextEmail.setText("");
}
else {
editTextEmail.setText("TEST");
}
}
换句话说,您无法管理是否从事件处理程序中单击了单选按钮。相反,您检查在处理程序中是否处于该状态,然后做出适当的响应。