通过共享首选项恢复时,是否有设置单选按钮的选定值的快捷方式?



如果我有多个radiobutton,并且我想在onResume()事件中恢复它们的状态,我是否需要单独设置每个radiobutton,就像:

KITPrefs = getPreferences(Activity.MODE_PRIVATE);
. . .
radioActive.setSelected(KITPrefs.getBoolean("radioActive", false));
radioFlyer.setSelected(KITPrefs.getBoolean("radioFlyer", false));
radioFreeEurope.setSelected(KITPrefs.getBoolean("radioFreeEurope", false));

…或者是否有一个快捷方式,我可以通过RadioGroup的属性设置一个选择的值?

如果您想检查单个RadioButton,那么您应该调用setChecked(boolean)而不是setSelected(boolean)。只要所有的radiobutton都在一个RadioGroup中,并且它们都有id,那么选择一个将取消选择其他设置。

还可以调用RadioGroup.check(id),但是必须存储被检查项的id。如果将id设置为某个常量值,则可以工作,但如果在r.j java中使用生成的id值(值可能会更改),则可能会导致问题。

最新更新