Cambiar el resumen de CheckBoxPreference basado en el estado marcado
Estoy tratando de crear una aplicación donde el resumen de preferencias cambia en función del estado de CheckBoxPreference
.
No estoy muy seguro de cómo consultar las preferencias ya que un buen viejo isChecked()
no funcionará.
- NotifyDataSetChanged para varias casillas de verificación
- Fila listView personalizada con casilla de verificación y marcas de verificación de ahorros en la rotación
- Establecer la casilla de verificación invisible a visible en la vista de lista
- Android Caja de selección Grupo
- Android 5.0 hace que las casillas de verificación no seleccionadas sean invisibles cuando el fondo es blanco
- No se puede usar la casilla de verificación en eclipse con el complemento de adt de Android
- Cambiar la casilla de verificación colorAccent en tiempo de ejecución mediante programación
- Mantenimiento de los estados de la casilla de verificación en listview con CursorAdapter
- Android checkable listview
- Establecer el estado de las casillas de verificación en Multichoice AlertDialog en Android
- ListView de Android con casilla de verificación: desactiva automáticamente
- ¿Cómo puedo distinguir si Switch, Checkbox Value es cambiado por el usuario o programáticamente (incluyendo por retención)?
- Proyecto de ejemplo para seleccionar varios contactos
Sería mucho más simple si acaba de usar android:summaryOff
y android:summaryOn
en su disposición de preferencia. No se requiere código. P.ej:
<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" />
Vea: 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()); } } } }
- GetActionBar () devuelve null después de la actualización de SDK a 5.0
- ¿Es posible el filtrado de paquetes TCP en plataformas móviles?