0

我想添加一个整数并将其存储到 SharedPreferences。首先,我将它实例化为零,然后,当单击按钮时,我想向它添加 1 并将其保存在 SharedPreferences 上。但是,当由于实例化步骤重新创建活动时,它会回到零。我该怎么做?

4

2 回答 2

0

无需初始化零,尝试全局变量

int value;

像这样在 onCreate

value=PreferenceManager.getDefaultSharedPreferences(this).getInt("value", 0);

并像这样点击按钮

value++;
PreferenceManager.getDefaultSharedPreferences(this).edit().putInt("value", value).commit();
于 2013-05-25T04:20:54.857 回答
0

你可以写一些像下面这样的类..我刚刚写了它,不知道它是否会工作,但你会有所了解..

 public class Value {
        public static final String KEY_VALUE_ID = "value";
        private SharedPreferences sharedPrefs;
        private Editor prefsEditor;

        public Value(Context context) {
            this.sharedPrefs = context.getSharedPreferences("APP", 0);
            this.prefsEditor = sharedPrefs.edit();
        }

        public int getValue(){
            return sharedPrefs.getInt(KEY_VALUE_ID, 0);
        }

        public void setValue(){
            prefsEditor.putInt( KEY_VALUE_ID, getValue() + 1 );
            prefsEditor.commit();
        }    

    }

以及如何在你的课堂上使用它:

在按钮上单击调用此方法:

new Value(this).setValue();
于 2013-05-27T07:44:25.223 回答