Advanced RecyclerView-Bibliothek - Codebeispiele

9

Ссылка

Dies scheint eine großartige Bibliothek in Bezug auf die Funktionalität zu sein. Es fehlt jedoch eine gute Dokumentation. Es hat ein "Tutorial" auf Swipeable items, aber wie einige andere Leute konnte ich es nicht folgen.

Hat jemand ein funktionierendes Beispiel oder kann jemand einen einfachen Use Case machen, indem er einen Gegenstand wischt und eine Taste darunter unter Verwendung dieser Bibliothek zeigt? Es wäre nützlich für viele Leute, die an dieser Funktionalität interessiert sind.

    
iBobb 21.03.2016, 14:50
quelle

2 Antworten

1

Ich fand die Bibliothek gut dokumentiert und einfach zu bedienen.

Ich habe den Code aus dem Original-Sample ausgewählt, das benötigt wurde, um Swipe mit Button darunter zu implementieren, der hier zu finden ist .

Ich hoffe, die folgenden Tipps werden es noch einfacher machen, das Muster zu verstehen, in dem Samples implementiert werden.

Übersicht

createAdapter Methode in LauncherPageFragment gibt einen Überblick, welche Aktivität welche Funktion enthält

Jede Probe folgt einem der beiden Muster:

Basisbeispiel
Im Falle einer Basisprobe werden der Adapter und der Ansichtshalter, die für die Recycleransicht benötigt werden, in derselben Aktivitätsklasse definiert.

Komplexe Stichprobe
Bei komplexen Stichproben werden Adapter und Ansichtshalter separat erstellt und die Recycleransicht selbst in einem anderen Fragment definiert.
In solchen Fällen gibt es ein zusätzliches Fragment, das in Aktivität hinzugefügt wird. Diese sind in com.h6ah4i.android.example.advrecyclerview.common.fragment package vorhanden, das verwendet wird, um die Daten bereitzustellen, die in der Recycler-Ansicht angezeigt werden müssen.

Für den Swipe mit der Schaltfläche müssen Sie erstellen RecyclerViewTouchActionGuardManager (um das Scrollen zu unterdrücken, während die Animation "Swipe-entlassen" ausgeführt wird) und RecyclerViewSwipeManager , um einen umschlossenen Adapter zu erstellen.

Für die Erweiterung müssen Sie SwipeableItemAdapter interface und den Bedarf des Viewhalters angeben, um AbstractSwipeableItemViewHolder anstelle von RecyclerView.ViewHolder zu erweitern.

Hinweis: Ich habe die Implementierung von onSetSwipeBackground geändert Im Originalbeispiel wurde ein Hintergrund für die Artikelansicht festgelegt.
Dies wurde nicht benötigt, wenn die darunter liegende Ansicht angezeigt werden soll. Außerdem verursachte es unnötige Neuzeichnungen.

    
Anirudha Agashe 18.12.2016 16:35
quelle
1

Sie können eine ausführlichere Dokumentation auf der Hauptwebseite finden: Ссылка

und Folgendes wird von der Seite swipeable in der Dokumentation kopiert:

Schritt 1. Stellen Sie sicher, dass der Adapter stabile IDs unterstützt

Dieser Schritt ist sehr wichtig. Wenn der Adapter nicht stabil & amp; eindeutige IDs, die zu merkwürdigen Verhaltensweisen führen (falsche Animationen, NPE, etc ...)

%Vor%

Schritt 2. Ändern Sie die Layoutdatei der Objektansichten

Wrap Inhaltsansichten mit einem anderen FrameLayout mit @+id/container ID.

%Vor%

⏬ ⏬ ⏬

%Vor%

Schritt 3. Ändern Sie ViewHolder

  1. Ändern Sie die übergeordnete Klasse in AbstractSwipeableItemViewHolder .
  2. Implementieren Sie getSwipeableContainerView() method.
  

Hinweis: Die Klasse AbstractSwipeableItemViewHolder ist eine Convenience-Klasse, die die Boilerplace-Methode 'SwipeableItemViewHolder' implementiert.

%Vor%

⏬ ⏬ ⏬

%Vor%

Schritt 4. Implementieren Sie die SwipeableItemAdapter -Schnittstelle

%Vor%

⏬ ⏬ ⏬

%Vor%

Schritt 5. Ändern Sie den Initialisierungsprozess von RecyclerView

Setzen Sie einen zusätzlichen Initialisierungsprozess in Ihre Activity / Fragment .

  1. Instantiate RecyclerViewSwipeManager .
  2. Erstellen Sie einen umschlossenen Adapter und legen Sie ihn auf RecyclerView fest.
  3. Fügen Sie RecyclerView zu RecyclerViewSwipeManager .
  4. hinzu
%Vor%

⏬ ⏬ ⏬

%Vor%

Ich hoffe meine Antwort wird helfen.

    
Zacktamondo 18.06.2017 15:27
quelle