如果选中togglebutton,则启用CheckBox

时间:2017-08-20 14:18:50

标签: android checkbox android-togglebutton

我为推送通知服务创建了一个Togglebutton(如果选中该按钮,则会显示通知)。我也想要,当我选中按钮时,复选框就是复选框。如果按钮未检查,则应禁用该复选框。

我使用了该代码,但它不起作用。仅当togglebutton关闭时,复选框才会被禁用。但它不起作用。

        ToggleButton toggle = (ToggleButton) findViewById(R.id.toogleNotifications);

    toggle.setChecked(Pushbots.sharedInstance().isNotificationEnabled());
    toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            Pushbots.sharedInstance().toggleNotifications(isChecked);
            chicken.setEnabled(false);
        }
    });

    if (toggle.isChecked()) {
        chicken.setEnabled(true);
    }

2 个答案:

答案 0 :(得分:0)

我不确定您要实施的是什么,但要启用/禁用checkbox toggle更改,您应该这样做:

 toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            Pushbots.sharedInstance().toggleNotifications(isChecked);
            chicken.setEnabled(isChecked);
        }
    });

你不需要这个部分:

    if (toggle.isChecked()) {
        chicken.setEnabled(true);
    }

答案 1 :(得分:0)

chicken.setEnabled(false);

应该是

chicken.setEnabled(isChecked);

在此期间,

if (toggle.isChecked())
 { chicken.setEnabled(true);}

应该是一个简单的

chicken.setEnabled(toggle.isChecked());