Mit dem Aufkommen von Android Lollipop, machte der RecyclerView seinen Weg offiziell. Der RecyclerView ist viel mehr leistungsstark, flexibel und eine große Verbesserung gegenüber ListView. Ich werde versuchen, Ihnen einen detaillierten Einblick zu geben.
Vorteile
1) ViewHolder Muster
In einem Listview wurde empfohlen, das ViewHolder Muster zu verwenden, aber es war nie ein Zwang. Im Fall von RecyclerView ist dies unter Verwendung der Klasse RecyclerView.ViewHolder obligatorisch. Dies ist einer der Hauptunterschiede zwischen dem ListView und dem RecyclerView.
Es macht die Dinge ein wenig komplexer in RecyclerView, aber eine Menge Probleme, die wir in der ListView konfrontiert wurden, werden effizient gelöst.
2) Layout
Dies ist eine weitere massive Erweiterung des RecyclerView gebracht. In einer ListView ist der einzige verfügbare Ansichtstyp die vertikale ListView. Es gibt keine offizielle Möglichkeit, eine horizontale ListView zu implementieren.
nun eine RecyclerView verwenden, können wir eine haben
i) LinearLayoutManager - die sowohl vertikale als auch horizontale Listen unterstützt,
ii) StaggeredLayoutManager - die Pinterest wie gestaffelten Listen unterstützt,
iii) GridLayoutManager - unterstützt die Anzeige von Gittern wie in den Galerie-Apps.
Und das Beste ist, dass wir alle diese dynamisch tun können, wie wir wollen.
3) Artikel Animator
Listviews zur Unterstützung guter Animationen fehlen, aber die RecyclerView bringt eine ganz neue Dimension hinzu. Mit der Klasse RecyclerView.ItemAnimator wird die Animation der Ansichten so einfach und intuitiv.
4) Artikel Dekoration
Bei Listviews, dynamisch Elemente Dekoration wie Ränder oder Teiler Zugabe war nie einfach. Aber im Falle von RecyclerView gibt die RecyclerView.ItemDecorator Klasse den Entwicklern eine riesige Kontrolle, macht die Dinge aber etwas zeitaufwendiger und komplexer.
5) OnItemTouchListener
Intercepting Artikel Klicks auf einem Listview war einfach, dank seiner AdapterView.OnItemClickListener Schnittstelle. Aber der RecyclerView gibt seinen Entwicklern viel mehr Macht und Kontrolle durch die RecyclerView.OnItemTouchListener, aber es kompliziert die Dinge ein bisschen für den Entwickler.
Nachteile
i) Es ist viel komplexer als eine Listenansicht.
ii) Es kann für einen Anfänger viel Zeit in Anspruch nehmen, einen RecyclerView vollständig zu verstehen.
iii) Es kann unnötigerweise Ihr Codierungsleben erschweren.
iv) Sie müssen mit es viel mehr Zeit zu verbringen, als Sie jemals für eine Listview benötigt
alle diese Funktionen sind jetzt außerhalb der Ansicht, sehen http://www.grokkingandroid.com/first-glance -androids-recyclerview/ – pskink