Spinner ne montre pas la valeur sélectionnée
J'ai implémenté le spinner en remplissant le tableau de la liste par le biais de la base de données.Je peux obtenir et afficher la liste de tableau dans mon spinner adaptateur tableau, mais si je sélectionne l'élément en spinner il n'est pas indiqué dans la spinner?Ce que j'avais erreur ici?
Voici mon code,
Spinner spinner1 = (Spinner) findViewById(R.id.prospin);
ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, providerlist);
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(adapter1);
- Je obtenir de l'élément sélectionné de la chaîne à l'aide de cette,
Spinner provid = (Spinner)findViewById(R.id.prospin);
String provider =provid.getSelectedItem().toString();
Quelqu'un peut m'aider svp!!!
OriginalL'auteur Jolly | 2013-12-03
Vous devez vous connecter pour publier un commentaire.
Cette réponse peut-être un peu stupide, mais l'essayer. Il a travaillé pour moi.
haha cela a résolu mon problème 🙂 mais si vous voulez changer la couleur du texte, voir ici
superbe! Fonctionne très bien pour moi! Merci 🙂
OriginalL'auteur Catluc
Problème:
Spinner affiche ni défaut, ni la valeur de l'élément sélectionné. Mais déroulante des éléments de menu sont affichées lorsqu'il est sélectionné.
Cause:
Arrière-plan et la couleur du texte à la fois d'être blanc!!!
Solutions:
xml(Préférable):
Écrire une mise en page personnalisée pour un spiner élément et l'utiliser au lieu de la valeur par défaut,
android.R.layout.simple_spinner_item
.Comment changer spinner taille du texte et la couleur du texte?
Code(Moins fiable):
Android a besoin de quelques grandes mises à jour ou peut-être dart et flutter devrait prendre le dessus...
Grâce Catluc
OriginalL'auteur TastyCatFood
J'ai eu le même problème et l'a résolu en ajoutant
notifyDataSetChanged()
après la liaison de données dans le Spinner.Tout d'abord je dois lier adaptateur avec Vide
ArrayList
l'obtention de la Liste des Éléments à partir du Serveur et ajoutés à cette Liste, mais j'ai oublié denotifyDataSetChanged()
après la mise à jour de la Liste.L'espoir qu'il sera utile.
juste ajouter
adapter.notifyDataSetChanged();
après la mise à jour de la liste.OriginalL'auteur Pratik Butani
Utilisation wrap_content pour la hauteur de spinner. Probablement, il n'a pas assez de hauteur pour afficher le texte.
OriginalL'auteur Mladen Rakonjac
si vous avez un adaptateur personnalisé, vous devez changer le TextView couleur du texte
et si vous n'avez pas une coutume adaptateur vous devez juste changer spinner fond
OriginalL'auteur Ali Salesi
De l'essayer.
OriginalL'auteur Quang Doan
Vous devez utiliser la première roulette pour obtenir les valeurs.
Essayez le code suivant:
Ce que vous faites est d'obtenir la valeur par défaut de la touche de navigation.
OriginalL'auteur JoaoFilipeClementeMartins
Consulter ces liens:
D'autre, essayez de les stocker sur la sélection de l'élément:
OriginalL'auteur Chintan Soni
utilisation
android:spinnerMode="dropdown"
attribut dans votre déclaréeSpinner
de l'élément xmlOriginalL'auteur Md. Arafat Al Mahmud
Généralement les filateurs est sélectionné par défaut lorsqu'ils sont utilisés ,afin d'essayer de définir vide,ou toute autre donnée à la première position qui est de la position du zéro, vous obtiendrez position exacte de vous à l'élément sélectionné .
OriginalL'auteur
La question de ce que j'ai trouvé avec la feuille de style.Utilisez cette
Pour la mise en page xml utiliser cette
Et, enfin, pour la classe
OriginalL'auteur RodneyO
Cette réponse peut-être un peu stupide, mais si vous faites la même erreur alors essayez...
définir les valeurs de votre liste de tableaux premier, puis affectez cette liste de tableaux de spinner.
J'ai déclaré un mondial arrayList et mis à spinner, puis ajouter des valeurs à partir d'une autre méthode... à ce moment, j'ai été confrontée au même problème. Sinon vous pouvez faire notifyDataSetChanged() à votre liste de tableaux.
OriginalL'auteur Apeksha Gunjal
essayer ce code==>
OriginalL'auteur Abhijit Rajmane
Bien cela se produit également si le contexte n'est pas correctement donné. J'ai été en utilisant
getApplicationContext()
où, comme il a besoin degetBaseContext()
.OriginalL'auteur Vyshak Athreya
Pour moi le problème c'est que je suis en utilisant
getApplicationContext()
. Lorsque je change dethis
il fonctionne très bien.OriginalL'auteur Puni
Bizarre. J'ai eu le même problème. Ce que j'ai fait pour le faire fonctionner :
1. Ajouter des données initiales de la liste ( ex -. - - - veuillez sélectionner - -)
2. Charger le reste des données et l'ajouter à la liste
3. Appel de l'adaptateur.notifyDatasetChaged()
OriginalL'auteur kylexy1357
Essayer Ce code
OriginalL'auteur SSALPHAX
Que vous avez à faire quelques changements comme:
au lieu de "android.R.de mise en page.simple_spinner_dropdown_item"
Utilisation "d'android.R.de mise en page.simple_list_item_activated_1"
Il va mettre en évidence la valeur sélectionnée en conséquence.
La couleur choisie est choisi par vos applications thème par défaut.
Pour plus d'informations, suivre lien ci-dessous:
https://developer.android.com/reference/android/R.layout.html#simple_list_item_activated_1
OriginalL'auteur H. Goyal