La liste des contacts code> est vide jusqu'à ce que la méthode Mais si j'ajoute quelque chose comme ça, je dois appeler quelque chose comme ça, je dois appeler readContacts () code> a été exécutée, en d'autres termes, lorsque
contactsview.setAdapter (adaptateur) code> a été exécuté , la liste
contacts code> est vide, alors pourquoi ce code peut toujours afficher les informations des contacts correctement?
notifydatasetchangeed () code>: p>
Ajouter code> est le bouton.
Maintenant que l'Android appellerait la méthode automatiquement, pourquoi, lors de la suppression de l'adaptateur
NifyDataSetSetSetched (); code> L'interface utilisateur n'a pas pu rafraîchir? p> p>
3 Réponses :
Cette méthode est appelée interne dans le cadre Android. Vous n'avez pas à l'appeler explicitement. P>
Source: https://www.udacy.com/course/développer -android-applications - UD853 p>
Je veux dire lorsque je réglais l'adaptateur, la liste est vide. Et après avoir utilisé readcontacts code>, la liste est devenue non vide, mais je n'ai pas utilisé
notifydataChanged () code> pour l'actualiser. Alors pourquoi la liste de liste peut toujours afficher des informations?
@HUNGRYMILK Lorsque le contenu de la liste est modifié, Android Framework appelle automatiquement notifyDataSetSetched () code>. Donc, vous n'avez pas à l'appeler vous-même.
Merci! Mais j'ai une nouvelle question, rafraîchissez-vous dans ce qui précède :)
En plus de la réponse de Lily, si vous écrivez votre propre adaptateur, vous devez l'appeler explicitement. P>
Le point est que vous entrez des données dans une commande, c'est-à-dire lorsque vous avez poussé un élément de la liste, vous ne l'entrez pas au 4ème, 5e index aléatoire afin que vous n'ayez pas à appeler J'espère que je t'ai fait un peu clair pour toi ...! p>
+++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++
Réponse Après avoir modifié la question, après avoir cherché et avoir mes propres pensées et compréhensions à cette égalité: p>
Dans le premier cas, aucun changement n'est nécessaire pour être fait pour la vue Mais dans le deuxième scénario em> Vous changez de vue (à peu près tout est Vue dans Android) afin que vous manipulez une vue en ajoutant un autre élément sur la vue déjà peuplée (qui a déjà un ensemble Adaptateur-destiné), donc cette fois-ci, vous devez dire que vous devez dire que hey, j'ai ajouté un élément dans vous maintenant vous rafraîchissez-vous, puis mettez à jour la liste (c.-à-d. Affichage). P> notifydatasetchangeed () code> comme sa définition elle-même indique: que certaines données ont été modifiées ou que tout point de vue reflétant le jeu de données doit se rafraîchir pour rendre les nouvelles données visibles sur la liste EM> strong>, comme dans ce cas, les données sortent de la portée de la liste visible, c'est-à-dire le nombre d'enfants affichés dans la liste afin que ce soit (la liste de réception) appelle toujours à la
Merci! Mais j'ai une nouvelle question, rafraîchissez-vous dans ce qui précède :)
@Hungrymilk Salut Il y a un coup d'œil sur l'explication mise à jour et si cela aide à l'accepter comme une réponse :)