Les meilleures pratiques à mettre en œuvre des paires clé-valeur dans android Spinner
Je veux mettre en œuvre un android spinner avec la valeur de la clé .
fr:anglais jp:japonais
Et lorsque l'utilisateur de sélectionner et d'élément que je veux enregistrer la clé de la base de données . Et aussi sur à côté de la charge, je veux touche de navigation pour sélectionner une particule spinner position.
Quelqu'un peut-il me dire quelle est la meilleure façon de le mettre en œuvre.
J'ai essayé de suivre mais n'a pas rencontré mon exigence
https://gist.github.com/granoeste/2786663
Ensemble Clé et la Valeur à spinner
Écrire maintenant, je suis en utilisant LinkedHashMapAdapter. Mais le problème c'est que là, j'ai besoin de stocker la position en DB ou partagés locaux de préférence . Je ne pense pas que ce une meilleure solution
Actuel De La Mise En Œuvre
LinkedHashMap localeList = new LinkedHashMap<>();
for (Map.Entry<String, String> val : map.entrySet()) {
int resourceId = getResources().getIdentifier(val.getValue(), "string", getPackageName());
localeList.put(val.getKey(), getResources().getString(resourceId));
}
LinkedHashMapAdapter<String, String> arrayAdapter = new LinkedHashMapAdapter<>(this, R.layout.spinner_layout, localeList);
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mLocale.setAdapter(arrayAdapter);
String localPosSelected = PreferencesHelper.getSharedPreferenceString(this, Constants.PREF_LOCALE_POS_KEY);
if(localPosSelected!=null){
mLocale.setSelection(Integer.parseInt(localPosSelected));
}
Aussi est-il une option pour l'élément sélectionné de Spinner en valeur
OriginalL'auteur Rahul | 2016-02-17
Vous devez vous connecter pour publier un commentaire.
installation Spinner:
Pour Perticular Spinner de Sélection d'élément:
D'abord Créer de la table de hachage pour stocker une Clé et une valeur paire
Maintenant Ajouter de la valeur comme cela HashMap :
Ici dans la table de hachage de la clé = YourValue et Valeur = yourKey
Si vous avez un problème avec ce code s'il vous plaît demander
Veuillez vérifier mes mises à Jour de Répondre et d'aller de l'avant Si cette réponse utile alors donner de la voix.
suggérez-vous de moi de maintenir les deux ArrayList et table de hachage ?
pour la sélection vient de mettre ce code int Position = spinnerAdapter.getPosition("Japonais"); spLang.setSelection(Position);
Il y a Hashmap utilisé pour obtenir la clé de l'Élément Sélectionné de Spinner.
OriginalL'auteur Dhaval Jivani
J'ai créé à l'aide d'un HashMap adaptateur pour une utilisation dans ces scénarios. Voir aussi l'exemple du projet ici
Pouvez vous s'il vous plaît envisager ce scénario . J'ai sauvé JP dans la base de données . Et dans la prochaine charge, je veux JP(Japonais) pour être pré-sélectionné dans le spinner .
OriginalL'auteur Harshad
Vous pouvez enregistrer des sélections
spinner
poste en base de données et la prochaine fois, définir laspinner
élément en position sauvegardéePour obtenir la position:
int position = spinner1.getSelectedItemPosition();
Que:
spinner.setSelection(position);
avis que vous devez appeler
setSelection()
méthode après la misespinner
adapter
OriginalL'auteur arsena
vous pouvez créer adaptateur personnalisé pour spinner pour atteindre cet objectif.
Avec l'utilisation de la coutume adaptateur
hashMap
pour la valeur de la clé de la paire.OriginalL'auteur KDeogharkar
OriginalL'auteur Rahul