使用Map循环使用SharedPreferences

时间:2017-10-05 21:30:04

标签: android sharedpreferences

我有下面显示的代码,我试图循环一些存储的值并将其作为文本添加到TextView。我的问题是第三个对象没有打印,而前两个对象打印。现在,我不知道为什么没有检索到第三个对象,并且任何帮助找到它都是值得赞赏的。

SharedPreferences settings = getSharedPreferences(MySecondActivity.PREFS_NAME, 0);
int var1, var2, var3;
var1 = settings.getInt("First key", MySecondActivity.var1);
var2 = settings.getInt("Second key", MySecondActivity.var2);
var3 = settings.getInt("Third key", MySecondActivity.var3);

Map<String, ?> map = settings.getAll();
for (Map.Entry<String, ?> entry : map.entrySet()) {
    TextViewStats.append(entry.getKey() + ": " + entry.getValue().toString() + "\n");
}

1 个答案:

答案 0 :(得分:0)

感谢crgarridos,我设法看到了我的错误。这实际上是一个非常愚蠢的。我忘了将值存储到SharedPreferences中。在MySecondActivity中使用此代码,它正在运行:

    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
    SharedPreferences.Editor editor = settings.edit();
    editor.putInt("First key", var1);
    editor.putInt("Second key", var2);
    editor.putInt("Third key", var3); //<- Hehe...

    // Commit the edits!
    editor.commit();
相关问题