Partager via


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 :

Exemple d’application utilisant RecyclerView pour répertorier les messages de boîte de réception

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 à utiliser RecyclerView 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 avec ListView et GridView.

  • 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 dans ListView.

  • 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 Adapterclasses LayoutManagerd’assistance prennent ViewHolder en charge RecyclerViewles 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 RecyclerViewla 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.