Pantalla de preferencias sin XML
Pregunta
Quiero usar preferencias, pero no quiero usarlas en xml. Usé esto para encontrar mi xml:
this.addPreferencesFromResource(R.xml.settings);
Y este es mi .xml:
<PreferenceCategory android:title="name">
<ListPreference android:key="name" android:title="Find name" android:summary="Select your name"
android:defaultValue="2" android:entries="@array/name" android:entryValues="@array/nameValues"/>
</PreferenceCategory>
¡Esto funciona! Pero, ¿cómo puedo declarar las preferencias en mi actividad .java sin el archivo xml? Quizás alguien pueda darme un código de muestra corto para mi código corto.
Gracias.
Solución
que podrías hacer
private SharedPreferences preferences;
preferences = PreferenceManager.getDefaultSharedPreferences(this);
Boolean mypref = preferences.getBoolean("mypref_whatever", true);
Si necesita escribir una preferencia, solo use un editor
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("mypref_whatever", false);
editor.commit();
De esta manera, no necesita un xml en absoluto.¿Es eso lo que estás buscando?
A.
Otros consejos
He explicado cómo hacer esto aquí esto se hace creando un PreferenceScreen programáticamente y vinculando un ListPreference a él, que luego se agregará al PreferenceFragment o Actividad de Preference actual
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow