在android中存储一个int值

时间:2015-03-01 02:16:26

标签: android save int

我正在制作一款让玩家获得高分的应用。但是,当我重置应用程序时,高分的int重置。有没有办法保存int,以便即使重新启动应用程序也能保存高分?

(我使用此代码重新启动应用程序):

Intent i = getBaseContext().getPackageManager()
             .getLaunchIntentForPackage( getBaseContext().getPackageName() );
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);

提前致谢!

1 个答案:

答案 0 :(得分:3)

使用此代码:

public class SharedPrefs {
    public class SharedKeys {
        final static String highscore = "highscore";
    } 
    public void storeInt(Context context, String key, int data) {
        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
        SharedPreferences.Editor editor = prefs.edit();
        editor.putInt(key, data);
        editor.commit();
    }

    public int getInt(Context context, String key) {
        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
        return prefs.getInt(key, 0);
    }
}

存储高分:

SharedPrefs prefs = new SharedPrefs();
prefs.storeInt(getApplicationContext(), SharedPrefs.SharedKeys.highscore, intScore);

并检索它:

prefs.getInt(getApplicationContext(), SharedPrefs.SharedKeys.highscore)

如果您对此工作原理有任何疑问,请发表评论。