我创建了一个Android首选项页面,并希望显示摘要中选择的当前选项。
所以我实现了也正确调用的onSharedPreferenceChanged监听器。但是,没有屏幕更改,显示旧选项。
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
// just update all
ListPreference lp = (ListPreference) findPreference(PREF_DOWNLOAD_WEB);
lp.setSummary(getString(R.string.pref_listDownloadWebSummary) + ": %s");
}
这是一个已知的错误吗?
答案 0 :(得分:2)
我注意到当我设置另一个prefs摘要时会显示更新的摘要。所以我先将摘要设置为“dummy”,然后是真正的字符串。它也有效。
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
// just update all
ListPreference lp = (ListPreference) findPreference(PREF_DOWNLOAD_WEB);
lp.setSummary("dummy"); // required or will not update
lp.setSummary(getString(R.string.pref_listDownloadWebSummary) + ": %s");
}