Fondamentalement, je veux être en mesure d'utiliser deux ListViews à travers ma classe BaseAdapter dans la même activité. Les ListViews seront affichés côte à côte et chaque élément dans ListView contiendra plusieurs vues (ImageView, TextView, etc.).Comment pourrais-je utiliser deux ListView avec un BaseAdapter?
Mon problème principal est de récupérer/afficher des données via la méthode getView() héritée de BaseAdapter. Comment est-ce que je pourrais détecter quelle ListView est mise à jour avec cette méthode pour savoir quel code appeler/mettre à jour? J'ai essayé d'examiner le paramètre ViewGroup dans getView() en espérant qu'il m'ait conduit au parent de ListItem mais l'identifiant qu'il renvoyait était différent de l'ID de ressource de mon ListView ... en fait ce n'était même pas dans ma R. fichier java du tout:
12-14 04:44:58.613: ERROR/ParentFromGetView(312): 16908298
12-14 04:44:58.623: ERROR/MyListViewId(312): 2131165191
J'étais espérant faire quelque chose comme ceci:
public View getView(int position, View convertView, ViewGroup parent) {
if (parent.getId() == R.id.ListView1) {
//Do stuff
} else if (parent.getId() == R.id.ListView2) {
//Do different stuff
}
}
... mais les Ids sont radicalement hors comme on le voit ci-dessus.
Merci d'avance!
Pourquoi utiliseriez-vous la même instance d'adaptateur pour deux affichages de liste différents? Même si ce sont les mêmes données, aucune raison pour que ce soit la même instance d'adaptateur sûrement ... –
Eh bien, j'aimerais que les deux s'exécutent sur la même activité. Actuellement, je développe mon activité en tant que ListActivity et je configure mon adaptateur en conséquence. Les données sont complètement différentes. Y at-il quelque chose ici qui me manque ...?! – BCS