ListPreference的值永远不会更新

g12*_*23k 3 android preferences sharedpreferences

我有一个ListPreference,但是当我点击一个项目时,该值不会更新.该getValue()总是返回同样的事情.

当我重新点击ListPreference该值时,遗憾的是没有改变.

我的代码:

        ListPreference lp7 = (ListPreference) findPreference("paramUpdate");
        lp7.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {

        public boolean onPreferenceChange(Preference preference, Object newValue) {
            ListPreference listPref = (ListPreference) preference;
        listPref.getValue();
            return false;
        }
    });
Run Code Online (Sandbox Code Playgroud)

首选项xml:

    <ListPreference android:key="paramUpdate"
            android:title="@string/paramUpdate"
            android:summary="@string/paramSummaryUpdate"
            android:entries="@array/update"
            android:entryValues="@array/updateValues"
             />
Run Code Online (Sandbox Code Playgroud)

价值观:

<string-array name="update">
    <item>24h</item>
    <item>48h</item>
    <item>72h</item>
    <item>@string/never</item>
</string-array>

<string-array name="updateValues">
    <item>24</item>
    <item>48</item>
    <item>72</item>
    <item>0</item>
</string-array>
Run Code Online (Sandbox Code Playgroud)

哪里错了?

Eri*_*ass 11

您必须trueonPreferenceChangeListener系统返回以存储新值.请参阅文档以供参考.