Est-ce que notifydatasetchanged appelle onCreateViewHolder lors de l'utilisation de RecyclerView?
Je veux utiliser un interrupteur pour basculer entre les deux vues différentes, mais en utilisant le même RecyclerView
. Fondamentalement, une fois que vous l'activez, je veux le RecyclerView
adaptateur pour rappel onCreateViewHolder()
mais cette fois, elle va utiliser un autre élément de mise en page du fichier.
Ne notifydatasetchanged()
cause de l'adaptateur à se reconstruire? Ou est-il un autre moyen?
source d'informationauteur AmaJayJB
Vous devez vous connecter pour publier un commentaire.
J'avais besoin de deux types sur
View
s sur monRecyclerView
Adapter
ainsi, l'un de "normal" de mode et un pour le mode multi-sélection.Ainsi, vous pouvez remplacer
getItemViewType
pour forcer la Carte à appeler votreonCreateViewHolder
pour tous les points de vue.Ajouter à la
Adapter
code:Ajouter à la
ViewHolder
:Puisque vous retourner un autre
ViewType
lorsque, dans uneActionMode
la Carte est forcé de rejeter toutes les vues créées, et de recréer tout nouveau.notifyDataSetChanged()
appelsonBindViewHolder()
en cas deRecyclerView
À supprimer et mettre à jour la mise en page dans
RecyclerView
vous pouvez appelerOU
après suppression d'objets dans votre jeu de données
Oui, il va penser que son ensemble de données n'est pas valide et doit nouvelle disposition et relier tous les modèles.