[英]allow only one checkbox ticked at a time android
我在布局中使用首选项屏幕。但是,当我可以同时勾选所有框时。.我如何拥有它,所以一次只勾选1个框。
?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<CheckBoxPreference
android:key="colour_white"
android:title="White"
android:defaultValue="true" />
<CheckBoxPreference
android:key="colour_red"
android:title="Red"
/>
您应该使用单选按钮和单选组。 复选框意味着要多选择。
您可以在Java中对其进行控制。 处理CheckBoxPreference
click事件,并取消选中除已触发click事件的复选框以外的所有复选框。
CheckBoxPreference cbp_white = (CheckBoxPreference) findPreference("colour_white");
CheckBoxPreference cbp_red = (CheckBoxPreference) findPreference("colour_red");
cbp_white.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
public boolean onPreferenceChange(Preference preference, Object newValue) {
//write your logic here
//Example: cbp_red.setChecked(false);
return true;
}
});
类似地处理其他复选框的更改事件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.