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