如果选中切换按钮,则启用复选框

Set CheckBox enabled if togglebutton is checked

我为我的推送通知服务创建了一个切换按钮(如果选中该按钮,将收到通知)。我还想,当我选中按钮时,复选框是复选框。如果按钮未选中,则复选框应禁用。

我使用了那个代码,但它不起作用。只有当切换按钮关闭时,复选框才会被禁用。但它不起作用。

        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);
    }

我不确定您要实现什么,但是要 enable/disable checkbox on 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);
    }
chicken.setEnabled(false);

应该是

chicken.setEnabled(isChecked);

同时,

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

应该是普通的

chicken.setEnabled(toggle.isChecked());