Android RadioButton无法使用setChecked(false)方法取消设置
如果我在第一次选择单选按钮,它工作正常。但是如果我打电话取消选择它 ((RadioButton)findViewById(R.id.id)).setChecked(false); 然后,以后即使我试图通过调用setChecked(true)将其选中,也不会工作,除非用户从屏幕上选择它 有人见过这个吗?还是只有我Android RadioButton无法使用setChecked(false)方法取消设置,android,radio-button,Android,Radio Button,如果我在第一次选择单选按钮,它工作正常。但是如果我打电话取消选择它 ((RadioButton)findViewById(R.id.id)).setChecked(false); 然后,以后即使我试图通过调用setChecked(true)将其选中,也不会工作,除非用户从屏幕上选择它 有人见过这个吗?还是只有我 if(Val != null){ if( ((RadioButton) findViewById(R.id.ID1)).getText().toStrin
if(Val != null){
if( ((RadioButton) findViewById(R.id.ID1)).getText().toString().trim().equals(Val))
((RadioButton) findViewById(R.id.ID1)).setChecked(true);
else if(((RadioButton) findViewById(R.id.ID2)).getText().toString().trim().equals(Val))
((RadioButton) findViewById(R.id.ID2)).setChecked(true);
}
else {
((RadioButton) findViewById(R.id.ID1)).setChecked(false);
((RadioButton) findViewById(R.id.ID2)).setChecked(false);
}
如果else部分至少执行一次,那么一切都会变得一团糟。
当我单步通过我的调试器时,我可以看到执行按照正确的路径进行,并将其设置为true。它只被执行了一次,我检查过了。我不会在代码的任何其他部分将其重置为false。我找到了解决方案
不可能取消选中特定单选按钮。您只能将其他项设置为true
因此,要清除所有选中的项目,您应该调用RadioGroup上的clearcheck()
方法
所以我的另一部分是
else {
((RadioGroup) findViewById(R.id.ID0)).clearCheck();
}
取一个不可见的单选按钮并检查它。组中的所有其他单选按钮都将自动取消选中。我们可以查看您的源代码吗?我尝试了这个android:saveEnabled=“false”,但这对我没有帮助。哇,至少我不是一个人…有同样的问题,虽然我的布局是图像-文本-检查图像-文本-检查,但我不能只制作一个放射组。。。我发现,当我不能用setChecked(false)设置收音机时,这是一个“bug”,android开发者必须做的事情就是取消设置。谢谢你的信息,我会试试的…欢迎你。那对你有用吗?正是我需要的!有时候单选按钮会弄得一团糟。谢谢或者在我的例子中,当我离开RadioGroup并玩两个单选按钮时,它变得更清晰了。这解决了我的问题。我试图重新检查已经选中的单选按钮,该按钮在UI中显示为未选中。