Wiederverwendbarkeit in Android (Kotlin) - Listenadapter

In diesem Artikel verkürzen wir den Code, der zum Erstellen eines Listenadapters für eine Recycler-Ansicht erforderlich ist .

Der Listenadapter ist eine Recycler View Adapter-Erweiterung, die eine bessere Leistung bietet als ein normaler Recycler View Adapter. Wenn Sie wissen, wie der Listenadapter funktioniert, fahren Sie fort. Andernfalls sollten Sie dies zuerst lernen. Siehe Dokumentation .

Einführung

Dies ist eine übliche Implementierung des Listenadapters :

Was ändert sich

Wenn man sich die obige Implementierung ansieht, kann man feststellen, dass sich die Dinge von Adapter zu Adapter ständig ändern werden:

  • das Layout zum Aufblasen
  • die ViewHolder-Klasse
  • die ViewHolder onBind () -Methode

Erstellen einer Adapterklasse (z. B. AdapterX ) und Entfernen des gesamten Boilerplate-Codes für einen beliebigen Adapter.

Schritt 1

Lassen Sie uns zunächst die Klasse erstellen, die sich von erstreckt ListAdapter. Wir benötigen diese als Parameter in unserer AdapterXKlasse, um sie an folgende Adresse weiterzuleiten ListAdapter:

  • Typ Parameter T - Typ der Listen, die dieser Adapter empfängt, wird in der übergebenListAdapter
  • Wert Parameter DiffCallback - Diff Rückruf zum Übergeben derListAdapter

Schritt 2

Lassen Sie uns jetzt implementieren onCreateViewHolder()

Wir benötigen eine Layout-Ressource, die aufgeblasen werden soll, und können sie daher als Konstruktorparameter in verwenden AdapterX.

Schritt 3

Und jetzt die onBindViewHolder()

Wie wir wissen, kann sich die onBind-Funktionalität von Adapter zu Adapter ändern. Wir erstellen eine abstrakte Erweiterungsmethode für ViewHolderund lassen sie vom geerbten Adapter implementieren.

Verwendung

Das AdapterX ist jetzt einsatzbereit. Werfen wir einen Blick auf die Verwendung.

Das ist derselbe Adapter, den wir zu Beginn des Artikels implementiert haben. Sieh nur den Unterschied. Die Verwendung AdapterX erhöht Ihre Produktionsgeschwindigkeit und die Wartbarkeit des Codes.

Einschränkungen

  • Wir können keine Ansichtsinitialisierungen durchführen, wenn der ViewHolder erstellt wird, da wir nur eine gemeinsame und einfache ViewHolder-Klasse haben.
  • Dies funktioniert nur für Adapter mit nur 1 Elementansichtstypen.

EndNotes

Der AdapterX deckt die übliche Implementierung des Listenadapters ab , Sie können ihn jedoch jederzeit an Ihre Anforderungen anpassen.

Suggested posts

Informationen zu Domänennamen finden

Ein Auszug aus Small, Sharp Software Tools von Brian P. Hogan

Informationen zu Domänennamen finden

Wenn Sie eine Anfrage an facebook.com stellen, sucht Ihr Computer nach dem Domänennamen, um diesen in eine IP-Adresse zu übersetzen, damit Ihr Computer diese Verbindung herstellen kann.

Das D-Wort und das L-Wort im UI-Design. Sprachangelegenheiten. Seien Sie nicht rassistisch.

Das D-Wort und das L-Wort im UI-Design. Sprachangelegenheiten. Seien Sie nicht rassistisch.

Unsere Sprache ist ein mächtiges Werkzeug, das unsere Gedanken, Einstellungen und Handlungen formen kann. Selbst scheinbar harmlose Begriffe können schädliche Vorurteile und Stereotypen aufrechterhalten.

Related posts

Der Soloauftritt des rothaarigen Mädchens

Im Auftrag von Hayden filmt Katie sich selbst beim Masturbieren.

Der Soloauftritt des rothaarigen Mädchens

Es war nach Mitternacht, als Hayden Katie nach ihrem gemeinsamen Abend zurück in ihren Studentenwohnheim fuhr. Sie hatte morgens einen frühen Unterricht und hatte keine Kleidung mehr zum Wechseln, nachdem sie die Nacht zuvor bei ihm übernachtet hatte.

Die Cowboy-Lüge

Wie Megakonzerne den Amerikanern eine fette Lüge verkauften

Die Cowboy-Lüge

Es ist ein strahlend goldener Morgen in den sanften Hügeln des Westens, während die ersten Sonnenstrahlen das gefrorene Gras auf den Ebenen erhellen. Eine Herde friedlicher Angus-Rinder, pechschwarz und massig, zeichnet sich vor dem Sonnenaufgang ab, während sie einen ausgetretenen Pfad entlang zu einem Ort geht, den sie alle gut kennen; die Frühstücksbar.

Gefährliche Gespräche

Gefährliche Gespräche

Wenn wir auf diesem Planeten weiterhin erfolgreich sein wollen, müssen wir gefährliche Gespräche führen. Diejenigen, die das in Frage stellen, was wir getan haben, was wir tun und was wir derzeit weiterhin tun werden (oder planen).

Schaffung einer sicheren Arbeitsumgebung

Schaffung einer sicheren Arbeitsumgebung

„Er wird mich beschützen, wenn ich in Gefahr bin. Er wird mich in seinem Zelt verstecken.