/ / Активності налаштувань Android не оновлюються належним чином - андроїд та андроїд

Діяльність налаштувань Android не оновлюється правильно - андроїд, android-preferences

Я створив сторінку налаштувань андроїд і хотів показати поточний параметр, обраний у резюме.

Тому я реалізував слухач 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");

}