Как прочитать/записать логическое предпочтение

Edit :этот код действительно работает. У меня была проблема в коде, который его использовал. Все равно оставлю, вдруг кому пригодится.

У меня есть класс с двумя методами для записи и чтения логического постоянного предпочтения. Однако, если я запишу новое значение, а затем попытаюсь его прочитать, я все равно получу старое значение. Только если я убью приложение и перезапущу его, я получу новое значение. Есть идеи, в чем проблема?

 Context mContext;

....
 public void writeFlag(boolean flag) {
        SharedPreferences sharedPreferences = PreferenceManager
               .getDefaultSharedPreferences(mContext);
        Editor editor = sharedPreferences.edit();
        editor.putBoolean("mykey", flag);
        editor.commit();
}

public boolean readFlag() {
        SharedPreferences sharedPreferences =
               PreferenceManager.getDefaultSharedPreferences(mContext);
        return sharedPreferences.getBoolean("mykey", false);
}
6
задан user1139880 29 April 2012 в 04:40
поделиться