我在Android共享首选项方面需要一些帮助。我正在尝试在SP中放置一个布尔类型并使它在应用程序中的所有其他活动中可见,并且我希望能够从另一个活动中将布尔类型的状态更改为true / false,以便在其中进行一些更改用户界面取决于该布尔值。
目前,我正在使用这段代码,虽然我理解,但并不正确。
这里是 :
活动1:
boolean isLoggedIn = false;
SharedPreferences isLogged = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = isLogged.edit();
editor.putBoolean("isLoggedIn", isLoggedIn);
editor.commit();
活动2:
boolean isLogged=true;
int mode = Activity.MODE_PRIVATE;
SharedPreferences mySharedPreferences;
mySharedPreferences=getSharedPreferences("isLoggedIn",mode);
mySharedPreferences.edit().putBoolean("isLoggedIn", isLogged);
boolean bool = mySharedPreferences.getBoolean("isLoggedIn",false);
Log.w("Boolean","Boolean state : "+bool);
最佳答案
在活动2中,尝试像这样使用,它将起作用
mySharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
并删除下面的行
mySharedPreferences.edit().putBoolean("isLoggedIn", isLogged);