Java 无法检查单选按钮
为什么在我以编程方式取消选中同一个单选按钮后,当我单击“下一步”按钮时无法选中该单选按钮,除非我选中了另一个单选按钮 这是取消选中单选按钮的代码:Java 无法检查单选按钮,java,android,radio,Java,Android,Radio,为什么在我以编程方式取消选中同一个单选按钮后,当我单击“下一步”按钮时无法选中该单选按钮,除非我选中了另一个单选按钮 这是取消选中单选按钮的代码: if(q.trim() != null || q.trim() != ""){ questionView.setText(q); r1.setChecked(false); r2.setChecked(false); r3.setCheck
if(q.trim() != null || q.trim() != ""){
questionView.setText(q);
r1.setChecked(false);
r2.setChecked(false);
r3.setChecked(false);
r1.clearFocus();
r2.clearFocus();
r3.clearFocus();
r1.setText(varNames.get("ra0"));
r2.setText(varNames.get("ra1"));
r3.setText(varNames.get("ra2"));
}
这就是我试图检查它的地方:
public void questionClicked(View view) {
boolean checked = ((RadioButton) view).isChecked();
switch(view.getId()) {
case R.id.firstQuestion:
if(!checked) {
r1.setChecked(true);
}
getAnswer(R.id.firstQuestion);
break;
case R.id.secondQuestion:
if(!checked) {
r2.setChecked(true);
}
getAnswer(R.id.secondQuestion);
break;
case R.id.thirdQuestion:
if(!checked) {
r3.setChecked(true);
}
getAnswer(R.id.thirdQuestion);
break;
}
}
我认为你应该制定一个清除选中单选按钮的方法。每次你点击“下一步”按钮都会叫它。以下是一个例子:
private void clearcheck(){
if(q.trim() != null || q.trim() != ""){
questionView.setText(q);
r1.setChecked(false);
r2.setChecked(false);
r3.setChecked(false);
r1.clearFocus();
r2.clearFocus();
r3.clearFocus();
r1.setText(varNames.get("ra0"));
r2.setText(varNames.get("ra1"));
r3.setText(varNames.get("ra2"));
}
}
像clearcheck()一样调用它;单击“下一步”按钮 我认为您不必对这些单选按钮中的任何一个使用.setChecked,因为默认情况下,当单击它们时,它们会被选中/取消选中。尝试删除您设置的线路。检查单选按钮。是的,我尝试过,但没有成功。