如何在Android中使用SharedPreferences存储布尔值?

我想保存布尔值,然后在if-else块中进行比较。

我目前的逻辑是:

boolean locked = true; if (locked == true) { /* SETBoolean TO FALSE */ } else { Intent newActivity4 = new Intent(parent.getContext(), Tag1.class); startActivity(newActivity4); } 

如何保存已设置为false的布尔variables?

Related of "如何在Android中使用SharedPreferences存储布尔值?"

 SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); Boolean statusLocked = prefs.edit().putBoolean("locked", true).commit(); 

如果你不关心返回值(状态)那么你应该使用.apply(),因为它是异步的更快。

 prefs.edit().putBoolean("locked", true).apply(); 

让他们回来使用

 Boolean yourLocked = prefs.getBoolean("locked", false); 

而false是失败或未设置时的默认值

在您的代码中,它看起来像这样:

 boolean locked = true; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); if (locked) { //maybe you want to check it by getting the sharedpreferences. Use this instead if (locked) // if (prefs.getBoolean("locked", locked) { prefs.edit().putBoolean("locked", true).commit(); } else { startActivity(new Intent(parent.getContext(), Tag1.class)); }