Comment générer listPreference dynamique dans Android? Je veux obtenir tous les points d'accès wifi et faire une liste en utilisant de préférence Activité (c.-à-d. En faire une liste en utilisant listpreference). Comment faire ça?
Réponses
Trop de publicités?Chaque élément XML dans Android peut être créé par programme car le nom de l'élément est également une classe Java. Par conséquent, vous pouvez créer une ListPreference dans le code:
CharSequence[] entries = { "One", "Two", "Three" };
CharSequence[] entryValues = { "1", "2", "3" };
ListPreference lp = new ListPreference(this);
lp.setEntries(entries);
lp.setEntryValues(entryValues);
Vous pouvez également le créer en XML, puis ajouter les entrées / valeurs d'entrée dans le code:
CharSequence[] entries = { "One", "Two", "Three" };
CharSequence[] entryValues = { "1", "2", "3" };
ListPreference lp = (ListPreference)findPreference("list_key_as_defined_in_xml");
lp.setEntries(entries);
lp.setEntryValues(entryValues);
Pour la création d'une liste dynamique de préférence, u besoin de créer une activité de préférence (c'est à dire d'étendre une activité PreferenceActivity).
Le code suivant peut être utilisé pour créer la liste de façon dynamique.
// La racine PreferenceScreen root = getPreferenceManager().createPreferenceScreen(ce); dialogBasedPrefCat.setTitle("Titre de la Catégorie"); de la racine.addPreference(dialogBasedPrefCat); //Ajout d'une catégorie // Liste de préférence dans la catégorie ListPreference listPref = new ListPreference(ce); listPref.setKey("keyName"); //Consulter pour obtenir la pref valeur listPref.setEntries("Tableau de valeurs"); listPref.setEntryValues("Tableau de valeur de l'élément"); listPref.setDialogTitle (boîte de Dialogue"Titre"); listPref.setTitle("Titre"); listPref.setSummary("Résumé"); dialogBasedPrefCat.addPreference(listPref); l'Ajout dans la catégorie de retour de la racine;
Espérons que cela aide à obtenir un !dea...
EDIT:
Créer et ajouter des valeurs à CharSequence[] comme ceci:
CharSequence[] cs = new String[]{"myValue"};
J'avais la même question et j'ai trouvé la réponse ici: http://alvinalexander.com/java/jwarehouse/apps-for-android/DivideAndConquer/src/com/google/android/divideandconquer/Preferences.java.shtml