Intereting Posts
Android Volley дает мне исключение outOfMemory Запуск приложения Android с ошибками студии Android: фатальный сигнал 13 Код SIGPIPE -6 Ошибка при попытке создать круговое раскрытие: IllegalStateException: не удается запустить эту анимацию в отдельном представлении Камера камеры с камерой Android воссоздана, когда я нажимаю кнопку «Назад» на планшете Archos на желе Как я могу изменить crashlytics apikey, вставленный в мой AndroidManifest.xml плагином затмения crashlytics Android 4.1 масштабирование видового экрана (setInitialScale, мета-начальная шкала не работает) Как захватить ввод мягкой клавиатуры в режиме просмотра? Ubuntu 15.04 build 5.0 5.0: вы пытаетесь построить с неправильной версией java. Зачем? Сервисные работники приложения cordova Как получить позицию, выбранную в RecyclerView? После обновления Android Studio до версии 1.3.0 я получаю «NDK-интеграция устарела в текущем плагине». Ошибка Проект изнашивания Android с 3 ароматами, 3 buildTypes и 2 applicationIdSuffixes Android Phonegap – TIMEOUT ERROR при попытке установить WebViewClient Как защитить информацию, содержащуюся в APK? Как правильно 2-стороннее связывать числовое с Android editText

Изменение сводки CheckBoxPreference на основе проверенного состояния

Я пытаюсь создать приложение, где сводка предпочтений изменяется в зависимости от проверенного состояния CheckBoxPreference .

Я не совсем уверен, как запросить предпочтения, поскольку старый добрый isChecked() не будет работать.

Было бы намного проще, если бы вы просто использовали android:summaryOff и android:summaryOn в вашей настройке предпочтений. Не требуется код. Например:

 <CheckBoxPreference android:enabled="true" android:key="alerts" android:title="Alerts" android:summaryOn="You will get notified when something interesting happens" android:summaryOff="You will not be notified" /> 

См .: http://developer.android.com/reference/android/preference/CheckBoxPreference.html.

 public class Preferences extends PreferenceActivity implements OnSharedPreferenceChangeListener { public final static String KEY_CHECK = "check"; private CheckBoxPreference mCheckBoxPreference; @Override public void onCreate(Bundle savedInstance) { super.onCreate(savedInstance); addPreferencesFromResource(R.xml.preferences); mCheckBoxPreference = (CheckBoxPreference) getPreferenceScreen() .findPreference(KEY_CHECK); } @Override protected void onResume() { super.onResume(); getPreferenceScreen().getSharedPreferences() .registerOnSharedPreferenceChangeListener(this); } @Override protected void onPause() { super.onPause(); getPreferenceScreen().getSharedPreferences() .unregisterOnSharedPreferenceChangeListener(this); } public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (key.equals(KEY_CHECK)) { if (mCheckPreference.isChecked()) { mCheckPreference.setSummary(mCheckPreference.getEntry()); } } } }