Я створив сторінку налаштувань андроїд і хотів показати поточний параметр, обраний у резюме.
Тому я реалізував слухач 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");
}
Чи є це відомою помилкою?
Відповіді:
2 для відповіді № 1Я помітив, що оновлений звіт відображається, коли я встановлюю інший підсумок префіксу. Тому я встановив резюме спочатку "манекен", а потім справжній рядок. Це теж працює.
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");
}