Différence entre getView & getDropDownView dans SpinnerAdapter
Lorsque vous implémentez SpinnerAdapter vous obtenez getDropDownView, comment est-il différent de getView
qui vous avez lorsque vous avez besoin d'étendre BaseAdapter
.
Vous devez vous connecter pour publier un commentaire.
Si nous regardons le code suivant, nous avons le nom et la valeur de tableau dans getView et getDropDownView.
Si getDropDownView méthode n'est pas implémentée, le déroulant de la fenêtre pop-up vous obtenez la vue de getView. Ainsi, il n'affiche que le nom.
Lorsque les deux getView et getDropDownView est mis en œuvre, l'ancien arriver nom et ce dernier se valeur, la fileuse au repos obtiendrez nom de getview et le déroulant de la fenêtre pop-up vous obtenez valeur.
Accepté la réponse semble un peu compliqué, donc pour des raisons de simplicité
getView
- la valeur affichée sur le compteur avant que l'utilisateur appuie sur lespinner, où chaque valeur d'affichage peut être réglé avec le convertView paramètre
getDropDownView
- liste des valeurs que l'utilisateur peut sélectionner une fois que l'utilisateur appuie sur le spinner, où chaque valeur de la liste peut être adaptée avec la convertView paramètreView
s, et non des valeurs.getView()
est pour le seulView
vous voir avant laSpinner
est exploité.getDropDownView()
est pour la pile verticale deView
s que vous voyez lorsque laSpinner
est exploité. Vous pouvez utiliser les deux méthodes pour créer et/ou remplir chacun des deux types deView
s selon vos exigences.getView
etgetDropDownView
pouvez afficher différentes mise en page.- Je créer un Spinner et l'utilisation
class ImageTextAdapter extends ArrayAdapter<String>
comme un adaptateur. Je remplacegetView
de sorte qu'il peut montrer à la foisImageView
etTextView
. Cependant, je ne la supplante pasgetDropDownView
.C'est une capture d'écran avant que le spinner est pressé
et après le spinner est pressé.
J'initialise le compteur avec le code suivant.
Est ici ImageTextAdapter.java
Nous pouvons utiliser SpinnerAdapter comme ceci:
Dans BaseAdapter.java
Remplacer
getView()
etgetDropDownView()
,retour de vue différents,vous trouverez la différence.