Quelqu'un autrement dit peut-il m’expliquer l’utilisation de et
méthodes de `` ?
Réponses
Trop de publicités?Ces gérer le cas où vous souhaitez que les différents types de vue pour des lignes différentes. Par exemple, dans une application contacts, vous pouvez même les lignes d'avoir des photos sur le côté gauche et de l'impair de lignes d'avoir des photos sur la droite. Dans ce cas, vous utilisez:
@Override
public int getViewTypeCount() {
return 2;
}
@Override
public int getItemViewType(int position) {
return position % 2;
}
Le cadre utilise votre type de vue de décider lesquels des points de vue à main vous via convertView
votre getView
méthode. En d'autres termes, dans l'exemple ci-dessus, de même que ses lignes seulement sont recyclés points de vue avec des images sur le côté gauche de la réutilisation, et de l'impair de lignes obtenez seulement ceux avec des photos sur la droite.
Si chaque ligne de votre liste a la même disposition, vous n'avez pas besoin de s'inquiéter à propos des types d'affichage. En fait, BaseAdapter.java fournit un comportement par défaut pour toutes les cartes:
public int getItemViewType(int position) {
return 0;
}
public int getViewTypeCount() {
return 1;
}
Ce bien vous offre le même type d'affichage pour chaque ligne.
Modifier - pour décrire le flux général:
- Vous lier les données à votre
AdapterView
à l'aide d'un adaptateur. - L'
AdapterView
tente d'afficher les éléments qui sont visibles pour l'utilisateur. - Le cadre des appels d'
getItemViewType
de ligne,n
, la ligne qu'il est sur le point de l'affichage. - Le cadre des vérifications de ses recyclé vue sur la piscine pour les vues de la ligne
n
s'type. Il ne trouve aucun car aucun les points de vue ont été recyclés encore. -
getView
est appelé pour la lignen
. - Vous appelez
getItemViewType
de ligne,n
pour déterminer le type de vue que vous devez utiliser. - Vous utilisez un si/instruction switch pour gonfler un autre fichier xml selon le type de vue est nécessaire.
- Vous remplissez la vue avec des informations.
- Vous revenez à la vue, la sortie de la
getView
, et votre ligne de vue est affiché à l'utilisateur.
Maintenant, quand une vue est recyclé par le défilement de l'écran, il va dans un recyclés vue sur la piscine qui est géré par le framework. Ces sont essentiellement organisées par type de vue, de sorte qu'une vue de type approprié est donné en convertView
paramètre dans votre getView
méthode:
- Le cadre nouveau des appels
getItemViewType
pour la ligne qu'il souhaite afficher. - Cette fois, il est une vue de l'recyclée de la piscine du type approprié.
- Le recyclés vue est transmis à vous en tant que l'
convertView
paramètregetView
méthode. - Vous remplissez le recyclés vue avec de nouvelles informations et de les retourner.
Si nous avons besoin afin de montrer les différents type d'affichage dans la liste de la vue et de son bon usage de getViewTypeCount() et getItemViewType() dans l'adaptateur à la place de la bascule d'un affichage.DISPARU et la VUE.VISIBLE peut être très cher à l'intérieur de getView() qui aura une incidence sur la liste de défilement.
Veuillez vérifier celui-ci pour l'utilisation de getViewTypeCount() et getItemViewType() dans l'Adaptateur.