检查android中的切换按钮状态?

时间:2015-07-09 18:12:56

标签: android toggle

如何保持切换按钮的状态,就像我们按下按钮1然后它会记住按钮1的开启状态,并且不允许我们按下按钮2,反之亦然。  请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

试试这个。

声明变量

ToggleButton mToggleOne;
ToggleButton mToggleTwo;

onCreate

mToggleOne = (ToggleButton) findViewById(R.id.toggle_button1);
mToggleTwo = (ToggleButton) findViewById(R.id.toggle_button2);

SharedPreferences spref = getSharedPreferences();
if(spref.getBoolean("one", false)) {
    mToggleOne.setChecked(true);
    mToggleTwo.setEnabled(false);    
} else if(spref.getBoolean("two", false)) {
    mToggleTwo.setChecked(true);
    mToggleOne.setEnabled(false);    
}
mToggleOne.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
       mToggleTwo.setEnabled(!isChecked);
       getSharedPreferences().edit()
           .putBoolean("one", isChecked)
           .apply();
       //other code
    }
});

mToggleTwo.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
       mToggleOne.setEnabled(!isChecked);
       getSharedPreferences().edit()
           .putBoolean("two", isChecked)
           .apply();
       //other code
    }
});