RecyclerView
RecyclerView ist eine Ansichtsgruppe für die Anzeige von Sammlungen; es ist so konzipiert, dass es eine flexiblere Ersatz für ältere Ansichtsgruppen wie ListView und GridView sein soll. In diesem Leitfaden wird erläutert, wie Sie RecyclerView in Xamarin.Android-Anwendungen verwenden und anpassen.
RecyclerView
Viele Apps müssen Sammlungen derselben Art anzeigen (z. B. Nachrichten, Kontakte, Bilder oder Songs); Häufig ist diese Sammlung zu groß, um auf den Bildschirm zu passen, sodass die Auflistung in einem kleinen Fenster angezeigt wird, das alle Elemente in der Auflistung reibungslos durchlaufen kann.
RecyclerView
ist ein Android-Widget, das eine Sammlung von Elementen in einer Liste oder einem Raster anzeigt, sodass der Benutzer durch die Sammlung scrollen kann. Im Folgenden sehen Sie einen Screenshot einer Beispiel-App, die zum Anzeigen von E-Mail-Posteingangsinhalten in einer vertikalen Bildlaufliste verwendet RecyclerView
wird:
RecyclerView
bietet zwei ansprechende Features:
Es verfügt über eine flexible Architektur, mit der Sie ihr Verhalten ändern können, indem Sie Ihre bevorzugten Komponenten einfügen.
Sie ist effizient mit großen Sammlungen, da sie Elementansichten wiederverwendet und die Verwendung von Ansichtshaltern zum Zwischenspeichern von Ansichtsbezügen erfordert.
In diesem Leitfaden wird erläutert, wie sie in Xamarin.Android-Anwendungen verwendet RecyclerView
werden; es erläutert, wie Sie das RecyclerView
Paket zu Ihrem Xamarin.Android-Projekt hinzufügen und beschreiben, wie RecyclerView
Funktionen in einer typischen Anwendung funktionieren. Reale Codebeispiele werden bereitgestellt, um zu zeigen, wie Sie in Ihre Anwendung integrieren RecyclerView
, wie Sie die Elementansicht klicken und wie Sie aktualisieren RecyclerView
, wenn sich die zugrunde liegenden Daten ändern. In diesem Leitfaden wird davon ausgegangen, dass Sie mit der Xamarin.Android-Entwicklung vertraut sind.
Anforderungen
Obwohl RecyclerView
sie häufig mit Android 5.0 Lollipop verknüpft ist, wird sie als Supportbibliothek angeboten – RecyclerView
funktioniert mit Apps, die die API-Ebene 7 (Android 2.1) und höher zielen. Im Folgenden müssen Sie in Xamarin-basierten Anwendungen verwenden RecyclerView
:
Xamarin.Android – Xamarin.Android 4.20 oder höher muss installiert und mit Visual Studio oder Visual Studio für Mac konfiguriert werden.
Ihr App-Projekt muss das Xamarin.Android.Support.v7.RecyclerView-Paket enthalten. Weitere Informationen zum Installieren NuGet Pakete finden Sie unter Exemplarische Vorgehensweise: Einschließlich eines NuGet in Ihrem Projekt.
Übersicht
RecyclerView
kann als Ersatz für die und GridView
Widgets ListView
in Android gedacht werden. Wie seine Vorgänger ist es so konzipiert, RecyclerView
dass ein großer Datensatz in einem kleinen Fenster angezeigt wird, aber RecyclerView
mehr Layoutoptionen bietet und für die Anzeige großer Sammlungen besser optimiert ist. Wenn Sie mit dem Vertrauten vertraut sind ListView
, gibt es mehrere wichtige Unterschiede zwischen ListView
und RecyclerView
:
RecyclerView
ist etwas komplexer zu verwenden: Sie müssen mehr Code schreiben, der im VergleichListView
zu verwendet werdenRecyclerView
soll.RecyclerView
stellt keinen vordefinierten Adapter bereit; Sie müssen den Adaptercode implementieren, der auf Ihre Datenquelle zugreift. Android enthält jedoch mehrere vordefinierte Adapter, die mitListView
undGridView
.RecyclerView
bietet kein Elementklickereignis an, wenn ein Benutzer auf ein Element tippt; Stattdessen werden Elementklickereignisse durch Hilfsklassen behandelt. Im Gegensatz dazuListView
bietet ein Elementklickereignis.RecyclerView
verbessert die Leistung durch Recyclingansichten und durch Erzwingen des Ansichtshaltermusters, wodurch unnötige Layoutressourcen-Nachschlagevorgänge beseitigt werden. Die Verwendung des Ansichtshaltermusters ist optional inListView
.RecyclerView
basiert auf einem modularen Design, das das Anpassen erleichtert. Sie können beispielsweise eine andere Layoutrichtlinie ohne erhebliche Codeänderungen an Ihrer App einfügen. Im GegensatzListView
dazu ist es relativ monolithisch in der Struktur.RecyclerView
enthält integrierte Animationen zum Hinzufügen und Entfernen von Elementen.ListView
Animationen erfordern einige zusätzliche Anstrengungen im Rahmen des App-Entwicklers.
Abschnitte
RecyclerView-Teile und -Funktionen
In diesem Thema wird erläutert, wie die Adapter
, LayoutManager
und ViewHolder
zusammenarbeiten als Hilfsklassen zusammenarbeiten, um die Unterstützung zu unterstützen RecyclerView
.
Es bietet einen überblick über jede dieser Hilfsklassen und erläutert, wie Sie sie in Ihrer App verwenden.
Beispiel für ein einfaches RecyclerView-Beispiel
In diesem Thema werden die informationen in RecyclerView-Teilen und -Funktionen bereitgestellt, indem sie reale Codebeispiele dafür bereitstellen, wie die verschiedenen RecyclerView
Elemente implementiert werden, um eine reale Foto-Browser-App zu erstellen.
Erweitern des RecyclerView-Beispiels
In diesem Thema wird der Beispiel-App in A Basic RecyclerView Beispiel zusätzlichen Code hinzugefügt, um zu veranschaulichen, wie Elementklickereignisse behandelt und RecyclerView
aktualisiert werden, wenn sich die zugrunde liegende Datenquelle ändert.
Zusammenfassung
In diesem Leitfaden wurde das Android-Widget RecyclerView
eingeführt; es erläutert, wie RecyclerView
Sie die RecyclerView
Supportbibliothek zu Xamarin.Android-Projekten hinzufügen, wie Sie Ansichten wiederverwenden, wie sie das Ansichtshaltermuster für Effizienz erzwingt und wie die verschiedenen RecyclerView
Hilfsklassen, die zusammenarbeiten, um Sammlungen anzuzeigen. Es wurde Beispielcode bereitgestellt, um zu veranschaulichen, wie RecyclerView
sie in eine Anwendung integriert ist, erläutert, wie Sie die Layoutrichtlinie anpassen, indem Sie verschiedene Layout-Manager einfügen und beschrieben, wie RecyclerView
Sie Elementklickereignisse behandeln und Datenquellenänderungen benachrichtigen RecyclerView
.
Weitere Informationen zu RecyclerView
, finden Sie in der RecyclerView-Klassenreferenz.