繁体   English   中英

一次只允许选中一个复选框

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM