Das Muster der Benutzeroberfläche durch Wischen zum Aktualisieren wird vollständig im
SwipeRefreshLayout
Widget, das vertikales Wischen erkennt, eine charakteristische Fortschrittsanzeige anzeigt und einen Callback auslöst
in Ihrer App an. Aktivieren Sie dieses Verhalten, indem Sie das Widget Ihrer Layoutdatei als übergeordnetes Element von
ListView
oder
GridView
und Implementieren des
Aktualisierungsverhalten, das beim Wischen durch den Nutzer ausgelöst wird.
Auf dieser Seite wird beschrieben, wie Sie das Widget einem vorhandenen Layout hinzufügen. Es wird auch gezeigt, wie eine Aktualisierung hinzugefügt wird. Aktion in den Überlaufbereich für die Aktionsleiste ein, sodass Nutzer, die die Wischgeste nicht verwenden können, eine mit einem externen Gerät manuell aktualisieren.
SwipeRefreshLayout-Abhängigkeit hinzufügen
Um SwipeRefreshLayout
in Ihrer App zu verwenden, fügen Sie die folgende Abhängigkeit zu Ihrem
build.gradle
-Datei:
Cool
dependencies { implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01" }
Kotlin
dependencies { implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01") }
SwipeRefreshLayout-Widget hinzufügen
Wenn Sie das Widget zum Aktualisieren durch Wischen zu einer vorhandenen App hinzufügen möchten, fügen Sie SwipeRefreshLayout
als das
Übergeordnetes Element eines einzelnen ListView
- oder GridView
-Elements.
SwipeRefreshLayout
unterstützt nur ein einzelnes ListView
- oder
GridView
Kind.
Das folgende Beispiel zeigt, wie Sie das SwipeRefreshLayout
-Widget einem
vorhandene Layoutdatei mit einem ListView
:
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swiperefresh" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="match_parent" /> </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
Sie können das SwipeRefreshLayout
-Widget auch mit einem
ListFragment
. Wenn die
Das Layout enthält ein ListView
mit der ID "@android:id/list"
, dem
Die Funktion zum Aktualisieren durch Wischen wird automatisch unterstützt. Die explizite Deklaration des
ListView
hat somit Vorrang vor der standardmäßigen ListFragment
-Ansichtsstruktur. Wenn
Wenn Sie die Standardansichtsstruktur verwenden möchten, überschreiben Sie Teile von SwipeRefreshLayout
und ListFragment
-Verhalten.
Aktualisierungsaktion zur Aktionsleiste hinzufügen
Fügen Sie der Aktionsleiste Ihrer App eine Aktualisierungsaktion hinzu, damit Nutzer, die keine Wischgesten ausführen können, manuelles Update auslösen. So können Nutzer, die Bedienungshilfen benötigen, Aktionen in der Aktionsleiste auslösen. wie Tastaturen oder Steuerkreuze.
Fügen Sie die Aktualisierungsaktion als Menüelement und nicht als Schaltfläche hinzu, indem Sie das Attribut
android:showAsAction=never
Wird die Aktion als Schaltfläche angezeigt, nehmen Nutzende möglicherweise an,
Die Aktion der Schaltfläche zum Aktualisieren unterscheidet sich von der Aktion zum Aktualisieren durch Wischen. Aktualisierung durchführen
weniger auffällig in der Aktionsleiste, durch die Nutzer dazu ermutigt werden, manuelle Updates mit Wischgesten auszuführen
und gleichzeitig die barrierefreie Option
für die Suche nach dem Steuerkreuz beibehalten.
Der folgende Code zeigt, wie Sie die Aktion zum Aktualisieren durch Wischen zum Überlaufbereich hinzufügen:
<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menu_refresh" android:showAsAction="never" android:title="@string/menu_refresh"/> </menu>