8 Unterschiede zwischen RecyclerView und ListView
1. ViewHolder-Muster
Das Muster, mit dem Aufrufe von findViewById () -Methoden reduziert werden.
In ListView können Sie problemlos eine Liste erstellen, ohne ViewHolder zu verwenden. Aber nicht im Fall von RecyclerView.
2. Adapter
Beide sind AdapterViews, ja. Es funktioniert basierend auf der Adapterklasse.
Es ist einfach, ListView mit Standardadaptern wie ArrayAdapter, CursorAdapter zu erstellen, aber RecyclerView bietet die RecyclerView.Adapter-Klasse, um eine neue benutzerdefinierte Adapterklasse zu erstellen.
Sie können ArrayAdapter oder einen anderen integrierten Adapter nicht mit RecyclerView verwenden.
3. Anordnung der Gegenstände
Ich habe Vertical ListView in einfachem und weniger Code erstellt. Aber was ist, wenn wir eine GridView erstellen müssen?
RecyclerView verwendet LayoutManager, um seine Elemente anzuordnen. Es gibt 3 LayoutManager-Klassen.
- LinearLayoutManager - hilft beim Erstellen einer linearen Typliste .
- GridLayoutManager - Wird zum Erstellen eines Grids verwendet.
- StaggeredGridLayoutManager - Wird zum Erstellen von Staggeredgrid verwendet.
Animationen
In ListView fehlen grundlegende Animationen. RecyclerView enthält jedoch einfache Animationen.
Teiler
Der Android - Version: Teiler und android: dividerHeight Attribute oder setDivider (), setDividerHeight () hilft Ihnen bei der Listview benutzerdefinierten Teiler zu machen.
Seit 25.1.0 können Sie die DividerItemDecoration- Klasse verwenden, um einen einfachen Teiler zu erstellen .
Klicken Sie auf Ereignisse
In RecyclerView fehlt OnItemClickListener , ja, das ist sehr traurig. Sie geben dem Entwickler jedoch mehr Kontrolle, indem sie RecyclerView.OnItemTouchListener bereitstellen .
Benachrichtigungsmethoden
Sie müssen geeignete Benachrichtigungsmethoden aufrufen, um korrekte Animationen auszuführen. RecylcerView verfügt im Vergleich zu ListView über viele Benachrichtigungsmethoden *.