RecyclerView
RecyclerView ist eine Ansichtsgruppe zum Anzeigen von Sammlungen. Es ist als flexiblerer Ersatz für ältere Ansichtsgruppen wie ListView und GridView konzipiert. In diesem Leitfaden wird erläutert, wie RecyclerView in Xamarin.Android-Anwendungen verwendet und angepasst wird.
RecyclerView
Viele Apps müssen Sammlungen desselben Typs anzeigen (z. B. Nachrichten, Kontakte, Bilder oder Songs); Häufig ist diese Sammlung zu groß, um auf den Bildschirm zu passen, sodass die Sammlung in einem kleinen Fenster angezeigt wird, das problemlos durch alle Elemente in der Sammlung scrollen 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 finden Sie einen Screenshot einer Beispiel-App, die verwendet, RecyclerView
um E-Mail-Posteingangsinhalte in einer vertikalen Bildlaufliste anzuzeigen:
RecyclerView
bietet zwei überzeugende Features:
Es verfügt über eine flexible Architektur, mit der Sie ihr Verhalten ändern können, indem Sie Ihre bevorzugten Komponenten anschließen.
Sie ist bei großen Sammlungen effizient, da sie Elementansichten wiederverwendet und die Verwendung von Ansichtshaltern zum Zwischenspeichern von Ansichtsverweisen erfordert.
In diesem Leitfaden wird die Verwendung RecyclerView
in Xamarin.Android-Anwendungen erläutert. 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. Es werden echte Codebeispiele bereitgestellt, die Ihnen zeigen, wie Sie in Ihre Anwendung integriert RecyclerView
werden, wie Sie das Klicken auf Elementansichten implementieren 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
es häufig mit Android 5.0 Lollipop in Verbindung gebracht wird, wird es als Supportbibliothek angeboten – RecyclerView
funktioniert mit Apps, die auf API-Ebene 7 (Android 2.1) und höher abzielen. Für die Verwendung RecyclerView
in Xamarin-basierten Anwendungen ist Folgendes erforderlich:
Xamarin.Android – Xamarin.Android 4.20 oder höher muss mit Visual Studio oder Visual Studio für Mac installiert und konfiguriert werden.
Ihr App-Projekt muss das Paket Xamarin.Android.Support.v7.RecyclerView enthalten. Weitere Informationen zum Installieren von NuGet-Paketen finden Sie unter Exemplarische Vorgehensweise: Einschließen eines NuGet-Pakets in Ihr Projekt.
Übersicht
RecyclerView
kann als Ersatz für die ListView
Widgets und GridView
in Android betrachtet werden. Wie seine Vorgänger, ist für die Anzeige eines großen Datasets RecyclerView
in einem kleinen Fenster konzipiert, bietet jedoch RecyclerView
mehr Layoutoptionen und ist besser für die Anzeige großer Sammlungen optimiert. Wenn Sie mit ListView
vertraut sind, gibt es mehrere wichtige Unterschiede zwischen ListView
und RecyclerView
:
RecyclerView
ist etwas komplexer in der Verwendung: Sie müssen mehr Code schreiben, der im Vergleich zu verwendetRecyclerView
werden sollListView
.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
funktionieren.RecyclerView
bietet kein Elementklickereignis an, wenn ein Benutzer auf ein Element tippt; Stattdessen werden Elementklickereignisse von Hilfsklassen behandelt. Im Gegensatz dazuListView
bietet ein Elementklickereignis.RecyclerView
verbessert die Leistung durch Das Recyceln von Ansichten und erzwingen des Ansichtshaltermusters, wodurch unnötige Layoutressourcensuchen vermieden werden. Die Verwendung des Ansichtshaltermusters ist inListView
optional.RecyclerView
basiert auf einem modularen Design, das die Anpassung erleichtert. Beispielsweise können Sie eine andere Layoutrichtlinie ohne erhebliche Codeänderungen an Ihrer App anschließen. Im Gegensatz dazuListView
ist relativ monolithisch in der Struktur.RecyclerView
enthält integrierte Animationen zum Hinzufügen und Entfernen von Elementen.ListView
Animationen erfordern zusätzlichen Aufwand seitens des App-Entwicklers.
Abschnitte
RecyclerView Parts and Functionality
In diesem Thema wird erläutert, wie , Adapter
LayoutManager
und ViewHolder
als Hilfsklassen zusammenarbeiten, um zu unterstützenRecyclerView
.
Es bietet eine allgemeine Übersicht über jede dieser Hilfsklassen und erläutert, wie Sie sie in Ihrer App verwenden.
Einfaches RecyclerView-Beispiel
Dieses Thema baut auf den Informationen in RecyclerView Parts and Functionality auf, indem reale Codebeispiele bereitgestellt werden, wie die verschiedenen RecyclerView
Elemente implementiert werden, um eine reale Fotobroming-App zu erstellen.
Erweitern des RecyclerView-Beispiels
In diesem Thema wird der Beispiel-App in A Basic RecyclerView Example zusätzlichen Code hinzugefügt, um zu veranschaulichen, wie Ereignisse mit Elementklick behandelt und aktualisiert werden RecyclerView
, wenn sich die zugrunde liegende Datenquelle ändert.
Zusammenfassung
In diesem Leitfaden wurde das Android-Widget RecyclerView
eingeführt. Es wurde erläutert, wie die RecyclerView
Supportbibliothek zu Xamarin.Android-Projekten hinzugefügt wird, wie RecyclerView
Ansichten recycelt werden, wie das Ansichtshaltermuster zur Effizienz erzwingt wird und wie die verschiedenen Hilfsklassen, aus denen sie bestehen RecyclerView
, zusammenarbeiten, um Sammlungen anzuzeigen. Es wurden Beispielcode bereitgestellt, um die Integration in eine Anwendung zu veranschaulichen RecyclerView
, es wurde erläutert, wie die Layoutrichtlinie durch Einstecken verschiedener Layout-Manager angepasst RecyclerView
wird, und es wurde beschrieben, wie Elementeklickereignisse behandelt und über Änderungen an der Datenquelle benachrichtigt werden RecyclerView
.
Weitere Informationen zu RecyclerView
finden Sie in der RecyclerView-Klassenreferenz.