我有一个从资源xml创建的列表首选项。我添加了一个创建对话框的首选项,用户可以在其中为listPreference添加值。
使用这些方法我添加了新值:
entries = getEntries();
entryValues = getEntryValues();
当用户向listpreference添加值时,会显示它。但是,当preferenceScreen重新创建新值时,消失了。
如何保存这些新值?
答案 0 :(得分:1)
问题是,当您重新打开PreferenceScreen
时,它会从XML加载ListPreference
的值。您可以使用setEntries()
的{{1}}和setEntryVaues()
方法更改此行为。当然,您需要以某种方式存储用户输入的所有值及其索引。您可以使用数据库或ListPreference
。希望这会有所帮助。
修改强>
将SharedPreferences
的值保存到ListPreference
:
SharedPreferences