RecyclerView
RecyclerView est un groupe d’affichage pour l’affichage des collections ; il est conçu pour être un remplacement plus flexible pour les groupes d’affichage plus anciens tels que ListView et GridView. Ce guide explique comment utiliser et personnaliser RecyclerView dans les applications Xamarin.Android.
RecyclerView
De nombreuses applications doivent afficher des collections de même type (par exemple, des messages, des contacts, des images ou des chansons) ; souvent, cette collection est trop grande pour s’adapter à l’écran, de sorte que la collection est présentée dans une petite fenêtre qui peut faire défiler sans problème tous les éléments de la collection.
RecyclerView
est un widget Android qui affiche une collection d’éléments dans une liste ou une grille, ce qui permet à l’utilisateur de parcourir la collection. Voici une capture d’écran d’un exemple d’application qui utilise RecyclerView
pour afficher le contenu de la boîte de réception de messagerie dans une liste de défilement verticale :
RecyclerView
offre deux fonctionnalités attrayantes :
Il dispose d’une architecture flexible qui vous permet de modifier son comportement en branchant vos composants préférés.
Il est efficace avec de grandes collections, car il réutilise les vues d’élément et nécessite l’utilisation des titulaires d’affichage pour mettre en cache les références d’affichage.
Ce guide explique comment utiliser RecyclerView
dans les applications Xamarin.Android . Il explique comment ajouter le RecyclerView
package à votre projet Xamarin.Android et décrit comment RecyclerView
les fonctions dans une application classique. Des exemples de code réels sont fournis pour vous montrer comment intégrer RecyclerView
dans votre application, comment implémenter un clic d’affichage d’élément et comment actualiser RecyclerView
quand ses données sous-jacentes changent. Ce guide suppose que vous connaissez le développement Xamarin.Android.
Spécifications
Bien qu’il RecyclerView
soit souvent associé à Android 5.0 Lollipop, il est proposé en tant que bibliothèque de support , RecyclerView
fonctionne avec les applications qui ciblent le niveau d’API 7 (Android 2.1) et versions ultérieures. Vous devez utiliser RecyclerView
les éléments suivants dans les applications basées sur Xamarin :
Xamarin.Android – Xamarin.Android 4.20 ou version ultérieure doit être installé et configuré avec Visual Studio ou Visual Studio pour Mac.
Votre projet d’application doit inclure le package Xamarin.Android.Support.v7.RecyclerView . Pour plus d’informations sur l’installation de packages NuGet, consultez Procédure pas à pas : Inclusion d’un NuGet dans votre projet.
Vue d’ensemble
RecyclerView
peut être considéré comme un remplacement pour les ListView
widgets dans GridView
Android. Comme ses prédécesseurs, RecyclerView
est conçu pour afficher un jeu de données volumineux dans une petite fenêtre, mais RecyclerView
offre davantage d’options de disposition et est mieux optimisé pour l’affichage de grandes collections. Si vous êtes familiarisé avec ListView
, il existe plusieurs différences importantes entre ListView
et RecyclerView
:
RecyclerView
est légèrement plus complexe à utiliser : vous devez écrire plus de code à utiliserRecyclerView
par rapport àListView
.RecyclerView
ne fournit pas d’adaptateur prédéfini ; vous devez implémenter le code de l’adaptateur qui accède à votre source de données. Toutefois, Android inclut plusieurs adaptateurs prédéfinis qui fonctionnent avecListView
etGridView
.RecyclerView
n’offre pas d’événement item-click lorsqu’un utilisateur appuie sur un élément ; Au lieu de cela, les événements de clic d’élément sont gérés par les classes d’assistance. En revanche,ListView
offre un événement item-click.RecyclerView
améliore les performances en recyclant les vues et en appliquant le modèle de support d’affichage, ce qui élimine les recherches inutiles de ressources de disposition. L’utilisation du modèle titulaire d’affichage est facultative dansListView
.RecyclerView
est basé sur une conception modulaire qui facilite la personnalisation. Par exemple, vous pouvez brancher une stratégie de disposition différente sans modifications significatives du code apportées à votre application. En revanche,ListView
est relativement monolithique dans la structure.RecyclerView
inclut des animations intégrées pour l’ajout et la suppression d’éléments.ListView
les animations nécessitent un effort supplémentaire de la part du développeur d’applications.
Sections
Composants et fonctionnalités RecyclerView
Cette rubrique explique comment les Adapter
classes LayoutManager
d’assistance prennent ViewHolder
en charge RecyclerView
les classes d’assistance.
Il fournit une vue d’ensemble générale de chacune de ces classes d’assistance et explique comment les utiliser dans votre application.
Exemple RecyclerView de base
Cette rubrique s’appuie sur les informations fournies dans RecyclerView Parts and Functionality en fournissant des exemples de code réels sur la façon dont les différents RecyclerView
éléments sont implémentés pour créer une application de navigation photo réelle.
Extension de l’exemple RecyclerView
Cette rubrique ajoute du code supplémentaire à l’exemple d’application présenté dans un exemple RecyclerView de base pour montrer comment gérer les événements de clic d’élément et mettre à jour RecyclerView
lorsque la source de données sous-jacente change.
Résumé
Ce guide a introduit le widget Android RecyclerView
; il a expliqué comment ajouter la RecyclerView
bibliothèque de prise en charge aux projets Xamarin.Android, comment RecyclerView
recycler les vues, comment elle applique le modèle de porteur d’affichage pour l’efficacité et comment les différentes classes d’assistance qui composent RecyclerView
collaborer pour afficher des collections. Il a fourni un exemple de code pour montrer comment RecyclerView
est intégré à une application, il a expliqué comment adapter RecyclerView
la stratégie de disposition en branchant différents gestionnaires de disposition, et il a décrit comment gérer les événements de clic d’élément et notifier RecyclerView
les modifications de source de données.
Pour plus d’informations sur RecyclerView
, consultez la référence de la classe RecyclerView.