1

在我的 SettingsActivity 中,我使用以下代码保存了一个值:

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
editor.putString("ClassName", strArrClasses.get(i));' // i is a variable inside a loop
int intClassID = i+1;
editor.putInt("ClassID", intClassID);
editor.commit();

我现在正在尝试使用以下代码在我的 MainActivity 上获取带有键“ClassID”的 SharedPreference 的值:

SharedPreferences sharedPrefs = getPreferences(MODE_PRIVATE);
int intClassID =  sharedPrefs.getInt("ClassID", 543548564);

我现在的问题是我无法访问类 ID,而且我总是得到默认值。

编辑:

我已经检查了我是否可以在我的 SettingsActivity 上获得 ClassID 并且效果很好

4

1 回答 1

1

改用getSharedPreferences。喜欢

SharedPreferences sharedPrefs = getSharedPreferences(name, MODE_PRIVATE);

这里的文件

getPreferences 检索一个 SharedPreferences 对象,用于访问此活动私有的首选项。这只是通过传入此活动的类名作为首选项名称来调用底层的 getSharedPreferences(String, int) 方法。

并按名称getSharedPreferences检索SharedPreference

在您的情况下,您只使用getPreferences了哪些活动的返回SharedPreferences

于 2013-05-26T17:45:33.623 回答