首次运行时的首选项屏幕默认设置

时间:2017-07-15 07:18:24

标签: android null crash listpreference preferencescreen

美好的一天,

我遇到了问题 - 我有一个PreferenceScreen,其ListPreference具有默认值。然后,我有一个Activity从该ListPreference获取一个值,但它返回" null"如果我不先打开PreferenceScreen。

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
    String prefSize = sp.getString("size", null);
    Size = Integer.parseInt(prefSize);
    mySize = Size;

有可能对此采取行动吗?如果我打开我的PreferenceScreen然后转到活动它会返回默认值,但如果我在第一次运行期间打开我的Activity,然后打开PreferenceScreen(只是打开,不更改任何设置),应用程序崩溃。

非常感谢你!

1 个答案:

答案 0 :(得分:0)

试试这个

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
String prefSize = sp.getString("size", "1");//provide deafult values to parse into int for first time
Size = Integer.parseInt(prefSize);
mySize = Size;