RecyclerViewRecyclerView

recyclerview eine Ansichts Gruppe zum Anzeigen von Sammlungen ist. Es ist für eine flexiblere Ersetzung für ältere Ansichts Gruppen wie ListView und GridView konzipiert. In diesem Handbuch wird erläutert, wie Sie in xamarin. Android-Anwendungen recyclerview verwenden und anpassen.RecyclerView is a view group for displaying collections; it is designed to be a more flexible replacement for older view groups such as ListView and GridView. This guide explains how to use and customize RecyclerView in Xamarin.Android applications.

RecyclerViewRecyclerView

Viele apps müssen Auflistungen desselben Typs anzeigen (z. b. Nachrichten, Kontakte, Bilder oder Lieder); Diese Sammlung ist zu groß, um auf den Bildschirm zu passen, sodass die Auflistung in einem kleinen Fenster dargestellt wird, das reibungslos durch alle Elemente in der Auflistung Scrollen kann.Many apps need to display collections of the same type (such as messages, contacts, images, or songs); often, this collection is too large to fit on the screen, so the collection is presented in a small window that can smoothly scroll through all items in the collection. RecyclerView ist ein Android-Widget, das eine Auflistung von Elementen in einer Liste oder einem Raster anzeigt, sodass der Benutzer einen Bildlauf durch die Sammlung durchführen kann.RecyclerView is an Android widget that displays a collection of items in a list or a grid, enabling the user to scroll through the collection. Der folgende Screenshot zeigt eine Beispiel-APP, die RecyclerView verwendet, um den Inhalt von e-Mail-Posteingang in einer vertikalen scrollliste anzuzeigen:The following is a screenshot of an example app that uses RecyclerView to display email inbox contents in a vertical scrolling list:

Beispiel-App mit "recyclerview" zum Auflisten von Posteingangs NachrichtenExample app using RecyclerView to list inbox messages

RecyclerView bietet zwei überzeugende Features:RecyclerView offers two compelling features:

  • Es verfügt über eine flexible Architektur, mit der Sie das Verhalten ändern können, indem Sie Ihre bevorzugten Komponenten anbinden.It has a flexible architecture that lets you modify its behavior by plugging in your preferred components.

  • Sie ist mit großen Auflistungen effizient, da Sie Element Sichten wieder verwendet und die Verwendung von Ansichts Besitzern zum Zwischenspeichern von Ansichts verweisen erfordert.It is efficient with large collections because it reuses item views and requires the use of view holders to cache view references.

In diesem Handbuch wird erläutert, wie RecyclerView in xamarin. Android-Anwendungen verwendet wird. Es wird erläutert, wie das RecyclerView-Paket Ihrem xamarin. Android-Projekt hinzugefügt wird, und es wird beschrieben, wie RecyclerView in einer typischen Anwendung funktioniert.This guide explains how to use RecyclerView in Xamarin.Android applications; it explains how to add the RecyclerView package to your Xamarin.Android project, and it describes how RecyclerView functions in a typical application. Echte Codebeispiele werden bereitgestellt, um Ihnen zu zeigen, wie Sie RecyclerView in Ihre Anwendung integrieren, die Element Ansicht implementieren und RecyclerView aktualisieren, wenn sich die zugrunde liegenden Daten ändern.Real code examples are provided to show you how to integrate RecyclerView into your application, how to implement item-view click, and how to refresh RecyclerView when its underlying data changes. In dieser Anleitung wird davon ausgegangen, dass Sie mit der xamarin. Android-Entwicklung vertraut sind.This guide assumes that you are familiar with Xamarin.Android development.

VoraussetzungenRequirements

Obwohl RecyclerView häufig mit Android 5,0 Lollipop verknüpft ist, wird es als Support Bibliothek angeboten – RecyclerView die mit apps arbeiten, die auf API Level 7 (Android 2,1) und höher ausgerichtet sind.Although RecyclerView is often associated with Android 5.0 Lollipop, it is offered as a support library – RecyclerView works with apps that target API level 7 (Android 2.1) and later. Folgendes ist erforderlich, um RecyclerView in xamarin-basierten Anwendungen zu verwenden:The following is required to use RecyclerView in Xamarin-based applications:

  • Xamarin. Android – xamarin. Android 4,20 oder höher muss entweder mit Visual Studio oder mit Visual Studio für Mac installiert und konfiguriert werden.Xamarin.Android – Xamarin.Android 4.20 or later must be installed and configured with either Visual Studio or Visual Studio for Mac.

  • Das App-Projekt muss das xamarin. Android. Support. V7. recyclerview -Paket enthalten.Your app project must include the Xamarin.Android.Support.v7.RecyclerView package. Weitere Informationen zum Installieren von nuget-Paketen finden Sie unter Exemplarische Vorgehensweise: Das Einschließen eines nuget-in Ihr Projekt.For more information about installing NuGet packages, see Walkthrough: Including a NuGet in your project.

ÜbersichtOverview

RecyclerView können als Ersatz für die ListView-und GridView Widgets in Android angesehen werden.RecyclerView can be thought of as a replacement for the ListView and GridView widgets in Android. Wie seine Vorgänger ist RecyclerView so konzipiert, dass ein großes Dataset in einem kleinen Fenster angezeigt wird. RecyclerView bietet jedoch Weitere Layoutoptionen und ist für die Anzeige großer Sammlungen besser optimiert.Like its predecessors, RecyclerView is designed to display a large data set in a small window, but RecyclerView offers more layout options and is better optimized for displaying large collections. Wenn Sie mit ListViewvertraut sind, gibt es einige wichtige Unterschiede zwischen ListView und RecyclerView:If you are familiar with ListView, there are several important differences between ListView and RecyclerView:

  • RecyclerView ist etwas komplexer zu verwenden: Sie müssen mehr Code schreiben, um RecyclerView im Vergleich zu ListViewzu verwenden.RecyclerView is slightly more complex to use: you have to write more code to use RecyclerView compared to ListView.

  • RecyclerView stellt keinen vordefinierten Adapter bereit. Sie müssen den Adapter Code implementieren, der auf Ihre Datenquelle zugreift.RecyclerView does not provide a predefined adapter; you must implement the adapter code that accesses your data source. Android enthält jedoch mehrere vordefinierte Adapter, die mit ListView und GridViewfunktionieren.However, Android includes several predefined adapters that work with ListView and GridView.

  • RecyclerView bietet kein Element Klick Ereignis, wenn ein Benutzer auf ein Element tippt. Stattdessen werden Element-Click-Ereignisse von Hilfsklassen behandelt.RecyclerView does not offer an item-click event when a user taps an item; instead, item-click events are handled by helper classes. Im Gegensatz dazu bietet ListView ein Element Klick-Ereignis.By contrast, ListView offers an item-click event.

  • RecyclerView verbessern die Leistung durch die Wiederverwendung von Sichten und durch Erzwingen des Ansichts Inhaber Musters, wodurch unnötige layoutressourcenlookups vermieden werden.RecyclerView enhances performance by recycling views and by enforcing the view-holder pattern, which eliminates unnecessary layout resource lookups. Die Verwendung des Ansichts Inhaber Musters ist in ListViewoptional.Use of the view-holder pattern is optional in ListView.

  • RecyclerView basiert auf einem modularen Design, das die Anpassung erleichtert.RecyclerView is based on a modular design that makes it easier to customize. Beispielsweise können Sie eine andere Layoutrichtlinie ohne wesentliche Codeänderungen an Ihrer APP einbinden.For example, you can plug in a different layout policy without significant code changes to your app. Im Gegensatz dazu ist ListView relativ monolithischer in der Struktur.By contrast, ListView is relatively monolithic in structure.

  • RecyclerView enthält integrierte Animationen für das Hinzufügen und Entfernen von Elementen.RecyclerView includes built-in animations for item add and remove. ListView Animationen erfordern einen zusätzlichen Aufwand für den App-Entwickler.ListView animations require some additional effort on the part of the app developer.

AbschnitteSections

Recyclerview-Teile und-FunktionalitätRecyclerView Parts and Functionality

In diesem Thema wird erläutert, wie die Adapter, LayoutManagerund ViewHolder als Hilfsklassen zur Unterstützung von RecyclerViewzusammenarbeiten.This topic explains how the Adapter, LayoutManager, and ViewHolder work together as helper classes to support RecyclerView. Sie bietet eine allgemeine Übersicht über jede dieser Hilfsklassen und erläutert, wie Sie Sie in Ihrer APP verwenden.It provides a high-level overview of each of these helper classes and explains how you use them in your app.

Ein grundlegendes recyclerview-BeispielA Basic RecyclerView Example

Dieses Thema baut auf den Informationen in den teilen und Funktionen von recyclerview auf und bietet echte Codebeispiele für die Implementierung der verschiedenen RecyclerView Elemente zum Erstellen einer realen Foto-Browser-app.This topic builds on the information provided in RecyclerView Parts and Functionality by providing real code examples of how the various RecyclerView elements are implemented to build a real-world photo-browsing app.

Erweitern des recyclerview-BeispielsExtending the RecyclerView Example

In diesem Thema wird der Beispiel-APP, die in einem grundlegenden recyclerview-Beispiel dargestellt wird, zusätzlicher Code hinzugefügt, um zu veranschaulichen, wie Elemente mit Element-und Update RecyclerView behandelt werden, wenn sich die zugrunde liegendeThis topic adds additional code to the example app presented in A Basic RecyclerView Example to demonstrate how to handle item-click events and update RecyclerView when the underlying data source changes.

ZusammenfassungSummary

In diesem Leitfaden wurde das Android-RecyclerView Widget eingeführt. Es wurde erläutert, wie Sie die RecyclerView Unterstützungs Bibliothek zu xamarin. Android-Projekten hinzufügen, wie RecyclerView Sichten wieder verwendet werden, wie Sie das Ansichts Inhaber-Muster für Effizienz erzwingt und wie die verschiedenen Hilfsklassen, die RecyclerView zusammenarbeiten, zum Anzeigen von Sammlungen zusammenarbeiten.This guide introduced the Android RecyclerView widget; it explained how to add the RecyclerView support library to Xamarin.Android projects, how RecyclerView recycles views, how it enforces the view-holder pattern for efficiency, and how the various helper classes that make up RecyclerView collaborate to display collections. Es wurde ein Beispielcode bereitgestellt, um zu veranschaulichen, wie RecyclerView in eine Anwendung integriert ist. es wurde erläutert, wie Sie die Layoutrichtlinie RecyclerViewanpassen können, indem Sie unterschiedliche LayoutManager einrichtet. Außerdem wurde beschrieben, wie Sie Klick Ereignisse für Elemente und RecyclerView von Daten Quell Änderungen.It provided example code to demonstrate how RecyclerView is integrated into an application, it explained how to tailor RecyclerView's layout policy by plugging in different layout managers, and it described how to handle item click events and notify RecyclerView of data source changes.

Weitere Informationen zu RecyclerViewfinden Sie in der " recyclerview"-Klassenreferenz.For more information about RecyclerView, see the RecyclerView class reference.