我想在按钮的onClick方法中获取切换状态。 实际上我想使用共享首选项使用保存按钮保存开关的状态。为此,我需要在onClick方法中使用Switch的状态作为保存按钮。
这是一些代码.. 这是onCheckedChanged方法。
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Toast.makeText(this, "Notification is " + (isChecked ? "on" : "off"),Toast.LENGTH_SHORT).show();
if(isChecked==true){
scheduleNotification(getNotification(w.getMEAN()),time);
}
我想在保存按钮的onClick方法中获取布尔值isChecked的值。 它们都是onCreate之外的不同方法。这就是我面临问题的原因。 提前谢谢!
答案 0 :(得分:1)
只需将其保存在事件处理程序中或调用另一个方法即可。例如:
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Toast.makeText(this, "Notification is " + (isChecked ? "on" : "off"),Toast.LENGTH_SHORT).show();
SharedPreferences prefs = activity.getSharedPreferences(
"com.my.app", Context.MODE_PRIVATE);
prefs.edit().putBoolean("isChecked", isChecked).commit();
}