0

我有一个从资源 xml 创建的列表首选项。我添加了创建对话框的首选项,用户可以在其中向 listPreference 添加值。

使用这些方法我增加了新的价值:

  entries = getEntries();
  entryValues = getEntryValues();

当用户向 listpreference 添加值时,它会显示。但是当preferenceScreen 正在重新创建新值时消失了。

我怎样才能保存这些新值?

4

1 回答 1

1

问题是,当您重新打开 时PreferenceScreen,它会从 XML 加载ListPreference' 值。setEntries()您可以使用 的和setEntryVaues()方法更改此行为ListPreference。当然,您需要以某种方式存储用户输入的所有值及其索引。您可以使用数据库或SharedPreferences用于它。希望这可以帮助。

编辑

将 a 的值保存ListPreferenceSharedPreferences

preferences.edit().putString(listPreference.getKey(), listPreference.getValue());
于 2012-07-11T09:43:56.360 回答