我正在尝试使用默认Shared Preferences
保存数据,但无法使此代码正常工作。
我无法在另一项活动中检索int
值。
在我的第一项活动onCreate
中,我想创建一个scorecounter
,每次收到积分时都会计算。它将在首次运行时启动。
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = preferences.edit();
if (preferences.getBoolean("first_run", true))
{
editor.putInt("totalpoang", 0);
editor.commit();
preferences.edit().putBoolean("first_time", false);
}
在我的Activity B
我要检索该值,修改它,然后再次将其保存在首选项中。
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = preferences.edit();
int poang = preferences.getInt(totalpoang, 0);
editor.putInt("antalpoang", totalpoang);
editor.commit();
然而我只得到错误totalpoang无法解析为变量。
我在第一个Activity中将其初始化为int
,我尝试将其作为int
检索。
我做错了什么?
答案 0 :(得分:1)
更改此
int poang = preferences.getInt(totalpoang, 0);
//editor.putInt("totalpoang", 0); // key is "totalpoang"
到
int poang = preferences.getInt("totalpoang", 0);
然后
editor.putInt("antalpoang", poang);