Recyclerview
In dieser Tabelle sind alle Artefakte in der Gruppe androidx.recyclerview
aufgeführt.
Artefakt | Stabile Version | Release Candidate | Beta-Ausgabe | Alphaversion |
---|---|---|---|---|
recyclerview | 1.3.2 | 1.4.0-rc01 | - | - |
recyclerview-selection | 1.1.0 | - | - | 1.2.0-alpha01 |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von RecyclerView hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:
Cool
dependencies { implementation "androidx.recyclerview:recyclerview:1.3.2" // For control over item selection of both touch and mouse driven selection implementation "androidx.recyclerview:recyclerview-selection:1.1.0" }
Kotlin
dependencies { implementation("androidx.recyclerview:recyclerview:1.3.2") // For control over item selection of both touch and mouse driven selection implementation("androidx.recyclerview:recyclerview-selection:1.1.0") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.4
Version 1.4.0-rc01
18. September 2024
androidx.recyclerview:recyclerview:1.4.0-rc01
ist veröffentlicht und es gab keine Änderungen seit 1.4.0-alpha02. Version 1.4.0-rc01 enthält diese Commits.
Änderungen seit Version 1.3.2
Kompatibilitätshinweis: Diese Version kann nur mit dem SDK für API 35 (Vanilla Ice Cream) oder höher kompiliert werden. Wenn Sie beim Upgrade AGP-Warnungen (Android Gradle Plugin) sehen, können Sie sie unterdrücken.
Neue Funktionen
- Unterstützung der
Adaptive
-Aktualisierungsrate:RecyclerView
ruft jetztsetFrameContentVelocity
auf, wenn überOverScroller
gescrollt wird (z. B. nach dem Abbremsen eines Wischvorgangs oder eines flüssigen Scrollens). (I8f8a4)
API-Änderungen
- Fügen Sie die
RecyclerView$LayoutManager#isLayoutReversed
API hinzu. (I4970e)
Sonstige Änderungen
- Die manuelle Kennzeichnung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies bei Verwendung von R8 mit AGP 7.3 oder höher (z.B. R8 Version 3.3) und für alle Builds bei Verwendung von AGP 8.1 oder höher (z.B. D8 Version 8.1) automatisch über die API-Modellierung erfolgt. Kunden, die AGP nicht verwenden, wird empfohlen, auf D8 Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (Ia60e0, b/345472586)
- Fügen Sie den
RecyclerView
-Binde-/Erstellungsabschnitten den Artikelansichtstyp hinzu und kennzeichnen Sie RV-Prefetches als „erzwungen – für nächsten Frame erforderlich“, wenn sie voraussichtlich vom nächsten Frame verwendet werden und daher so schnell wie möglich gestartet werden sollten. (I8ec3e, b/309523615) - Aktualisieren Sie
compileSdk
auf 35. Weitere Informationen finden Sie oben im Abschnitt „Kompatibilitätsanmerkung“. 5dc41be
Version 1.4.0-beta01
21. August 2024
androidx.recyclerview:recyclerview:1.4.0-beta01
ist veröffentlicht und es gab seit 1.4.0-alpha02 keine Änderungen. Version 1.4.0-beta01 enthält diese Commits.
Kompatibilitätshinweis: Diese Version kann nur mit dem SDK für API 35 (Vanilla Ice Cream) oder höher kompiliert werden. Wenn Sie beim Upgrade AGP-Warnungen (Android Gradle Plugin) sehen, können Sie sie unterdrücken.
Version 1.4.0-alpha02
7. August 2024
androidx.recyclerview:recyclerview:1.4.0-alpha02
wird veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
Kompatibilitätshinweis: Diese Version kann nur mit dem SDK für API 35 (Vanilla Ice Cream) oder höher kompiliert werden. Wenn Sie beim Upgrade AGP-Warnungen (Android Gradle Plugin) sehen, können Sie sie unterdrücken.
Neue Funktionen
- Unterstützung für variable Bildwiederholraten: RecyclerView ruft jetzt
setFrameContentVelocity
auf, wenn es über OverScroller scrollt (z. B. beim Abbremsen nach einem Wisch oder einem flüssigen Scrollen). (I8f8a4)
API-Änderungen
- Eingestellte
ViewCompat.LAYOUT_DIRECTION_
APIs (I51710, b/317055535) - Fügen Sie die
RecyclerView$LayoutManager#isLayoutReversed
API hinzu. (I4970e)
Sonstige Änderungen
- Die manuelle Kennzeichnung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies bei Verwendung von R8 mit AGP 7.3 oder höher (z.B. R8 Version 3.3) und für alle Builds bei Verwendung von AGP 8.1 oder höher (z.B. D8 Version 8.1) automatisch über die API-Modellierung erfolgt. Kunden, die AGP nicht verwenden, wird empfohlen, auf D8 Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (Ia60e0, b/345472586)
- Füge den
RecyclerView
-Binde-/Erstellungsabschnitten den Artikelansichtstyp hinzu und kennzeichne RV-Prefetches als „erzwungen – für nächsten Frame erforderlich“, wenn sie voraussichtlich vom nächsten Frame verwendet werden und daher so schnell wie möglich gestartet werden sollten. (I8ec3e, b/309523615) - Aktualisieren Sie
compileSdk
auf 35. Weitere Informationen finden Sie oben im Abschnitt „Kompatibilitätshinweis“. 5dc41be
Externer Beitrag
GestureDetectorCompat
wird jetzt eingestellt, daGestureDetector
über dieminSdk
verfügbar ist. (Icc4cd)
Version 1.4.0-alpha01
18. Oktober 2023
androidx.recyclerview:recyclerview:1.4.0-alpha01
wird veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
API-Änderungen
- Fügen Sie die
RecyclerView$LayoutManager#isLayoutReversed
API hinzu. (I4970e)
Fehlerkorrekturen
- Fehler behoben, der sporadisch zu Abstürzen während von Animationen führte (I42f22b) (auch in Version 1.3.2 enthalten)
Version 1.3.2
Version 1.3.2
18. Oktober 2023
androidx.recyclerview:recyclerview:1.3.2
wird veröffentlicht. Version 1.3.2 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler wurde behoben, der sporadisch zu Abstürzen während von Animationen führte. (I42f22b)
Version 1.3.1
Version 1.3.1
26. Juli 2023
androidx.recyclerview:recyclerview:1.3.1
ist veröffentlicht, ohne Änderungen seit 1.3.1-rc01. Version 1.3.1 enthält diese Commits.
Die Versionshinweise der vorherigen Version finden Sie auf der Seite mit den Versionshinweisen.
Version 1.3.1-rc01
24. Mai 2023
androidx.recyclerview:recyclerview:1.3.1-rc01
wird veröffentlicht. Version 1.3.1-rc01 enthält diese Commits.
Nutzer von ViewPager2 müssen auf mindestens 1.1.0-beta02 aktualisieren, wenn sie auf diese Version von RecyclerView
umstellen, um Abstürze zu vermeiden.
API-Änderungen
- Neue
setDebugAssertionsEnabled
- undsetVerboseLoggingEnabled
-Methoden hinzufügen, die bei der Behebung vonRecyclerView
-bezogenen Problemen in Apps helfen können (I514b9)
Fehlerkorrekturen
- Abstürze für Nutzer von
ViewTreeLifecycleOwner
(einschließlichComposeView
) behoben, indem vorübergehend getrennte Ansichten beim Aufrufen vononBind
vorübergehend wieder angehängt werden. (I7244f2c, b/265347515, b/283288295)
Version 1.3.0
Version 1.3.0
8. März 2023
androidx.recyclerview:recyclerview:1.3.0
wurde veröffentlicht. Es gibt keine Änderungen seit 1.3.0-rc01. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Diese Version enthält Leistungsverbesserungen, die zuvor in 1.3.0-alpha02 und 1.3.0-beta01 enthalten waren und die sich auf die Verwendung mit Jetpack Compose auswirken. Wenn Sie Compose
1.2.0-beta02
oder höher verwenden und die in den vorherigen Interoperabilitätsrichtlinien beschriebenenMyComposeAdapter
- undDisposeOnViewTreeLifecycleDestroyed
-ViewCompositionStrategy
-Elemente verwendet haben, sollten Sie diese entfernen, da sie nicht mehr eine Verbesserung gegenüber dem Standardstatus darstellen. - Neue
ConcatAdapter.getWrappedAdapterAndPosition
-Methode hinzugefügt, um Informationen zu verpackten Adaptern abzurufen, wenn keinViewHolder
vorhanden ist, z. B. bei einemSpanSizeLookup
(I2bd4c, b/191543920)
Version 1.3.0-rc01
21. September 2022
androidx.recyclerview:recyclerview:1.3.0-rc01
wird veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
- Keine Änderungen seit der letzten Version
Version 1.3.0-beta02
10. August 2022
androidx.recyclerview:recyclerview:1.3.0-beta02
wird veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
API-Änderungen
- Anmerkungen zur Nullbarkeit, die in 1.3.0-beta01 hinzugefügt wurden, wurden entfernt, da sie eine erhebliche quelleninkompatibile Änderung für Kotlin-Nutzer darstellten (I7a258,I1557e6,I8db76)
Version 1.3.0-beta01
29. Juni 2022
androidx.recyclerview:recyclerview:1.3.0-beta01
wird veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Neue Funktionen
- Diese Betaversion enthält Leistungsverbesserungen, die zuvor in 1.3.0-alpha02 enthalten waren, wenn sie mit Jetpack Compose verwendet wurde. Wenn Sie Compose
1.2.0-beta02
oder höher verwenden und die in den vorherigen Interoperabilitätsrichtlinien beschriebenenMyComposeAdapter
- undDisposeOnViewTreeLifecycleDestroyed
-ViewCompositionStrategy
-Elemente verwendet haben, sollten Sie diese entfernen, da sie nicht mehr eine Verbesserung gegenüber dem Standardstatus darstellen.
API-Änderungen
- Für eine Reihe von Methoden und Parametern wurden Anmerkungen zur Null-Zulässigkeit hinzugefügt, um Lint-Warnungen für Java-Nutzer und die Interoperabilität für Kotlin-Nutzer zu verbessern. Diese Änderung kann für einige Kotlin-Nutzer eine Quellbrüche bewirken und bei einigen Java-Nutzern zu zusätzlichen Lint-Warnungen/-Fehlern führen. (I61829, b/236487044; Ia0b6f; I6f119, b/236487209; Ibe1de, b/236487210)
Fehlerkorrekturen
- Achten Sie darauf, dass Raster von A11Y-Diensten als Raster behandelt werden, indem Sie einen A11Y-Knoten-Infoklassennamen festlegen. (I12812)
Version 1.3.0-alpha02
6. April 2022
androidx.recyclerview:recyclerview:1.3.0-alpha02
wird veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
API-Änderungen
- Es werden experimentelle
BuildCompat
-Methoden für zukünftige SDKs hinzugefügt (Iafd82, b/207528937) - Neue
ConcatAdapter.getWrappedAdapterAndPosition
-Methode hinzugefügt, um gewickelte Adapterinformationen in Situationen abzurufen, in denen kein ViewHolder vorhanden ist, z. B. bei einemSpanSizeLookup
(I2bd4c, b/191543920)
Fehlerkorrekturen
- Integration in die neue AndroidX-Bibliothek „PoolingContainer“ (Ib89d2)
- Passt den Scrollabstand für Bedienungshilfen an (If74ae)
Version 1.3.0-alpha01
15. September 2021
androidx.recyclerview:recyclerview:1.3.0-alpha01
wird veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
Neue Funktionen
- Unterstützung für RecyclerView mit Stretch-Overscroll hinzugefügt. (Iab877)
RecyclerView-Auswahl Version 1.2.0
Version 1.2.0-alpha01
5. Mai 2021
androidx.recyclerview:recyclerview-selection:1.2.0-alpha01
wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, durch das die Zuordnung von Schlüssel/Position im KeyProvider verloren ging, während der Eintrag noch nicht wiederverwendet wurde. (b/145767095)
Version 1.2.1
Version 1.2.1
2. Juni 2021
androidx.recyclerview:recyclerview:1.2.1
wird veröffentlicht. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
ViewHolder
s innerhalb einesConcatAdapter
geben jetzt die richtige Adapterposition zurück, wenn sie imonViewRecycled
-Callback abgefragt werden. (b/187339376)
Version 1.2.0
Version 1.2.0
7. April 2021
androidx.recyclerview:recyclerview:1.2.0
wird veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
ConcatAdapter: Mit diesem neuen Adapter können Sie mehrere Adapter im selben RecyclerView ganz einfach zusammenführen. Weitere Informationen finden Sie in diesem Blogpost.
- Im Rahmen dieser Änderung wird
ViewHolder.getAdapterPosition
eingestellt und durch zwei neue Methoden ersetzt:- getBindingAdapterPosition gibt die Position relativ zum Adapter zurück, der das Element gebunden hat.
- getAbsoluteAdapterPosition gibt die Position relativ zum gesamten RecyclerView zurück.
Lazy State Restoration: Der RecyclerView-Adapter kann die Wiederherstellung des Status jetzt so verzögern, dass sie erst nach dem Laden des Inhalts erfolgt. Weitere Informationen finden Sie in der Dokumentation.
Version 1.2.0-rc01
24. März 2021
androidx.recyclerview:recyclerview:1.2.0-rc01
wird veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
ConcatAdapter.Config.Builder
hat jetzt Standardwerte, die mitConfig.DEFAULT
übereinstimmen (b/157169835)
Version 1.2.0-beta02
24. Februar 2021
androidx.recyclerview:recyclerview:1.2.0-beta02
wird veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, durch das der rechte Überblendungseffekt beim Scrollen aufgrund des oberen Abstands nach oben in den Abstandsbereich verschoben wurde, anstatt nach unten, um den Abstand zu berücksichtigen. (I6b61d, b/118399122)
Version 1.2.0-beta01
2. Dezember 2020
androidx.recyclerview:recyclerview:1.2.0-beta01
wird seit 1.2.0-alpha06
unverändert veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Version 1.2.0-alpha06
1. Oktober 2020
androidx.recyclerview:recyclerview:1.2.0-alpha06
wird veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.
Neue Funktionen
- Es können jetzt mehrere RecyclerListeners hinzugefügt werden. (I70ad8, b/145767095)
API-Änderungen
- Veraltete Funktion: RecyclerView.setRecyclerListener(RecyclerListener) (I70ad8, b/145767095)
Version 1.2.0-alpha05
22. Juli 2020
androidx.recyclerview:recyclerview:1.2.0-alpha05
wird veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, durch das der Fokus bei einem RecyclerView mit nur einem Element, das den Fokus hat, nicht nach vorne oder hinten verschoben wurde. (6f36b3)
ArrayIndexOutOfBoundsException
inStaggeredGridLayoutManager
korrigiert (49b601, b/122303625, b/74877618, b/160193663, b/37086625)- Ein Messfehler wurde behoben, bei dem unter bestimmten Umständen die untergeordneten Elemente von RecyclerView nicht angezeigt wurden. (89040c, b/138734786)
Externe Beiträge
- Vielen Dank an Kolin Krewinkel im Namen von Facebook für den Beitrag.
Version 1.2.0-alpha04
24. Juni 2020
androidx.recyclerview:recyclerview:1.2.0-alpha04
wird veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
API-Änderungen
MergeAdapter
wurde inConcatAdapter
umbenannt, um Verwechslungen mit verschiedenen Datenzusammenführungsmechanismen zu vermeiden (c0540c, b/158019211).
Fehlerkorrekturen
- Verbesserungen beim automatischen Scrollen, wenn alle sichtbaren Elemente entfernt werden (fe8670, b/154124815)
Version 1.2.0-alpha03
29. April 2020
androidx.recyclerview:recyclerview:1.2.0-alpha03
wird veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
Neue Funktionen
- RecyclerView hat jetzt eine
nestedScrollBy
-Methode, die programmatisches Scrollen ermöglicht, das mit verschachtelten Scrollvorgängen zusammenarbeitet: (Ibaa58)
Version 1.2.0-alpha02
1. April 2020
androidx.recyclerview:recyclerview:1.2.0-alpha02
wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Diese und höhere Versionen von RecyclerView sind nicht mit niedrigeren Versionen von ViewPager2 kompatibel. Wenn Sie derzeit androidx.viewpager2:viewpager2:1.0.0
oder niedriger verwenden, aktualisieren Sie auf androidx.viewpager2:viewpager2:1.1.0-alpha01
.
Neue Funktionen
MergeAdapter
- MergeAdapter: Ein neuer RecyclerView-Adapter, mit dem mehrere Adapter linear kombiniert werden können.
MyAdapter adapter1 = ...; AnotherAdapter adapter2 = ...; MergeAdapter merged = new MergeAdapter(adapter1, adapter2); recyclerView.setAdapter(mergedAdapter);
Im obigen Beispiel zeigt MergeAdapter Elemente von
adapter1
gefolgt vonadapter2
an.RecyclerView.Adapter
Lazy State Restoration:Der Klasse
RecyclerView.Adapter
wurde eine neue API hinzugefügt, mit der der Adapter steuern kann, wann der Layoutstatus wiederhergestellt werden soll.Sie können beispielsweise folgende Nummern anrufen:
myAdapter.setStateRestorationStrategy(StateRestorationStrategy.WHEN_NOT_EMPTY);
damit RecyclerView wartet, bis der Adapter nicht mehr leer ist, bevor die Scrollposition wiederhergestellt wird.
CollectionInfo und CollectionItemInfo werden nicht mehr standardmäßig ausgefüllt.
Wenn Dienste zur Barrierefreiheit (z. B. TalkBack) dem Nutzer weiterhin die Anzahl und den Artikelindex anzeigen sollen, müssen Sie „CollectionInfo“ und „CollectionItemInfo“ selbst ausfüllen.
Diese Objekte werden nicht mehr im Framework eingefügt, da das Framework die Anzahl der vom Nutzer wahrgenommenen Elemente nicht ermitteln kann (z. B. Trennlinien, Überschriften oder RecyclerView-Elemente, die mehrere wahrgenommene Elemente darstellen).
Fehlerkorrekturen
- RecyclerView verhindert jetzt das Anpinnen an Ansichten außerhalb des Darstellungsbereichs, wenn sich die Größe des Darstellungsbereichs geändert hat.
- Ein Fehler in DiffUtil wurde behoben, bei dem der Unterschied möglicherweise falsch berechnet wurde, wenn ein Originalelement in der ersten Liste mehrmals in der zweiten Liste dupliziert wurde. (b/123376278)
Version 1.2.0-alpha01
18. Dezember 2019
androidx.recyclerview:recyclerview:1.2.0-alpha01
wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Geringe Probleme mit FastScroller im Zusammenhang mit RTL-Zeichnen und Touch-Genauigkeit behoben (b/143789932, aosp/1130438)
- Ein Absturz in ItemTouchHelper wurde behoben, der auftrat, wenn ein Element aus dem RecyclerView entfernt wurde, während ItemTouchHelper-Animationen ausgeführt wurden (b/140447176, aosp/1167575)
Version 1.1.0
Version 1.1.0
20. November 2019
androidx.recyclerview:recyclerview:1.1.0
wird veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Bei
PagerSnapHelper
undLinearSnapHelper
wird jetzt unabhängig vom Wert vonclipToPadding
der Abstand von RecyclerView berücksichtigt (b/139452422, b/139012032, aosp/1103182, aosp/1106715, aosp/1130728) RecyclerView.setLayoutTransition(LayoutTransition)
wird offiziell eingestellt und es wird eineIllegalArgumentException
ausgelöst, wenn die Funktion mit einem nicht nullwertigen Wert aufgerufen wird. Verwenden Sie stattdessenRecyclerView.setItemAnimator(ItemAnimator)
. (aosp/839414)- aosp/723649: RecyclerView implementiert jetzt
NestedScrollingChild3
, sodass es darüber informiert werden kann, wenn alle übergeordneten Elemente mit verschachteltem Scrollen nicht mehr die Entfernungen für das verschachtelte Scrollen verbrauchen. WennRecyclerView.onNestedScroll(View, int, int, int, int, int)
derzeit durch Entwicklercode überschrieben wird, wird es wahrscheinlich nicht mehr aufgerufen. Stattdessen sollteRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])
überschrieben werden. - RecyclerView hat jetzt ein Standardstilattribut:
recyclerViewStyle
. Damit lässt sich der Standardstil in Ihrem Design festlegen. - Die API für die Barrierefreiheit von ViewCompat beeinträchtigt den RecyclerView ItemDelegate nicht mehr.
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])
kann überschrieben werden, um anzupassen, wie viel zusätzlicher Layoutbereich auf beiden Seiten des zugehörigen RecyclerView hinzugefügt werden soll. (aosp/931259)- Es wurde eine neue Überladung von smoothScrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)
hinzugefügt, mit der Sie eine Dauer in Millisekunden für die Animation angeben können. (aosp/952807)
Version 1.1.0-rc01
23. Oktober 2019
androidx.recyclerview:recyclerview:1.1.0-rc01
wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Das Problem wurde behoben, dass beim Überschreiben von
RecyclerViewAccessibilityDelegate.ItemDelegate
die Meldung „Die Anwendung reagiert nicht“ angezeigt wurde (aosp/1138057, aosp/1133434).
Version 1.1.0-beta05
9. Oktober 2019
androidx.recyclerview:recyclerview:1.1.0-beta05
wird veröffentlicht. Version 1.1.0-beta05 enthält diese Commits.
API-Änderungen
- Als Reaktion auf aosp/1106715 und aosp/1103182 geben LinearSnapHelper und PagerSnapHelper jetzt die Ansicht zurück, die sich in der Mitte des RecyclerView-Bereichs befindet, abzüglich des Abstands, unabhängig vom Wert von clipToPadding. (aosp/1130728)
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem RecyclerView doppelte Knoten für die Barrierefreiheit für untergeordnete Elemente von RecyclerView generierte. (aosp/1130618)
- Ein Problem wurde behoben, durch das virtuelle Hierarchien für Barrierefreiheit in RecyclerViews nicht funktionierten.
- Ein Problem wurde behoben, bei dem benutzerdefinierte ItemDelegates nicht verwendet wurden.
Version 1.1.0-beta04
5. September 2019
androidx.recyclerview:recyclerview:1.1.0-beta04
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Fehlerkorrekturen
- Bei
PagerSnapHelper
undLinearSnapHelper
wird jetzt unabhängig vom Wert vonclipToPadding
der Abstand von RecyclerView berücksichtigt (b/139452422, b/139012032, aosp/1103182, aosp/1106715) - Ein Fehler wurde behoben, durch den RecyclerView das Unterbrechen von Touch-Ereignissen nicht verhinderte, wenn durch verschachtelte Vorab-Scrollvorgänge ein
NestedScrollingParent
scrollte (b/138668210, aosp/1105373). Das ist von Vorteil für Bibliotheken wie ViewPager2. - RecyclerView geht jetzt immer zu
SCROLL_STATE_DRAGGING
, bevor verschachtelte Vorab-Scrolls gesendet werden (aosp/1105373) - Verschachteltes Vorab-Scrollen wird nicht mehr ausgeführt, bevor die Touch-Geste den Touch-Toleranzbereich überschreitet (b/139530818, aosp/1105373)
dx
- unddy
-Argumente, die an verschachtelte Vorab-Scrolls gesendet werden, werden auf null gesetzt, wenn RecyclerView nicht in diese Richtung scrollen kann (aosp/1105373)
Version 1.1.0-beta03
15. August 2019
androidx.recyclerview:recyclerview:1.1.0-beta03
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
API-Änderungen
- RecyclerView sendet jetzt Scrollabstände über
View.onScrollChanged(int l, int t, int oldl, int oldt)
, damit Dienste zur Barrierefreiheit korrekt über Scrolländerungen informiert werden. (aosp/1007823)
Fehlerkorrekturen
- Ein schwerwiegender Fehler im Stack-Overflow im Zusammenhang mit RecyclerView und Barrierefreiheit wurde behoben. (aosp/1099577)
Version 1.1.0-beta02
7. August 2019
androidx.recyclerview:recyclerview:1.1.0-beta02
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
- RecyclerView hat jetzt ein Standardstilattribut:
recyclerViewStyle
. Damit lässt sich der Standardstil in Ihrem Design festlegen.
Fehlerkorrekturen
- Ein Fehler wurde behoben, durch den RecyclerView das Unterbrechen von Touch-Ereignissen nicht verhinderte, wenn das Scrollen ein NestedScrollingParent-Element zum Scrollen veranlasste. (b/131115697, aosp/1055911)
Version 1.1.0-beta01
2. Juli 2019
androidx.recyclerview:recyclerview:1.1.0-beta01
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
RecyclerView
nimmt jetzt am verschachtelten Scrollen teil, wenn das Scrollen über Bedienungshilfenereignisse gestartet wird. (aosp/973584)
Version 1.1.0-alpha06
5. Juni 2019
androidx.recyclerview:recyclerview:1.1.0-alpha06
und androidx.recyclerview:recyclerview-selection:1.1.0-alpha06
werden freigegeben. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
- Es wurde eine neue Überladung von smoothScrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)
hinzugefügt, mit der Sie eine Dauer in Millisekunden für die Animation angeben können. (aosp/952807)
API-Änderungen
GridLayoutManager
undStaggeredGridLayoutManager
kennzeichnen Elemente mit voller Breite nicht mehr automatisch als Überschriften für Bedienungshilfen (aosp/969703)- Reihenfolge der Auswahl (nach Erstellungszeit) in
recyclerview-selection
beibehalten (aosp/937279)
Fehlerkorrekturen
- Ein Fehler wurde behoben, bei dem
RecyclerView
bei verschachteltem Scrollen mit falschen Geschwindigkeiten geschleudert wurde. (aosp/961642) - Stabilitätsverbesserungen für
recyclerview-selection
hinzugefügt (aosp/960213, aosp/926296)
Version 1.1.0-alpha05
7. Mai 2019
androidx.recyclerview:recyclerview:1.1.0-alpha05
und androidx.recyclerview:recyclerview-selection:1.1.0-alpha05
werden freigegeben. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])
kann überschrieben werden, um anzupassen, wie viel zusätzlicher Layoutbereich auf beiden Seiten des zugehörigen RecyclerView hinzugefügt werden soll. (aosp/931259)
API-Änderungen
- API zum Abrufen von
DividerItemDecoration
-Drawable hinzufügen (aosp/937282) LinearLayout.getExtraLayoutSpace(RecyclerVew.State)
wird eingestellt und durch einen neuen Mechanismus ersetzt, mit dem auf beiden Seiten benutzerdefinierter zusätzlicher Layoutbereich möglich ist. Die neue Methode istLinearLayout.calculateExtraLayoutSpace(RecyclerView.state, int[])
(aosp/931259).
Fehlerkorrekturen
- Die Auswahl der Touch-Gesten wurde optimiert (aosp/940781)
- Reihenfolge der Auswahl beibehalten (nach Erstellungszeit) (b/128455535)
Version 1.1.0-alpha04
3. April 2019
androidx.recyclerview:recyclerview:1.1.0-alpha04
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Fehlerkorrekturen
- Bisher konnte der OnItemTouchListener von RV ACTION_UP nicht abfangen, wodurch der OnItemTouchListener nicht verhindern konnte, dass anderer Code auf ACTION_UP reagierte. Dieses Problem wurde behoben: (aosp/916137)
Version 1.1.0-alpha03
13. März 2019
androidx.recyclerview:recyclerview:1.1.0-alpha03
wird veröffentlicht. Eine vollständige Liste der Commits in dieser Version finden Sie hier.
Neue Funktionen
GridLayoutManager
: Optionale, höhere Auflösung derGridLayoutManager
-Bildlaufleiste (aosp/838836):- Anhand von Informationen zur Spannweite werden die Abmessungen der Bildlaufleiste für eine
GridLayoutManager
geschätzt. - Rufe
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)
auf und übergebe „true“, um die Funktion zu aktivieren. - Weitere Informationen finden Sie in der Dokumentation zu
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)
.
- Anhand von Informationen zur Spannweite werden die Abmessungen der Bildlaufleiste für eine
Fehlerkorrekturen
- Barrierefreiheit: Es gab einen Fehler, bei dem der ItemDelegate, der mit der
RecyclerViewAccessibilityDelegate
des RecyclerView verknüpft war, nicht mit der ItemView des ViewHolder verknüpft wurde, nachdem der ViewHolder recycelt und dann neu gebunden wurde. Dies beeinträchtigte die Barrierefreiheit. Dieser Fehler wurde behoben (aosp/917740).
Version 1.1.0-alpha02
30. Januar 2019
androidx.recyclerview:recyclerview 1.1.0-alpha02
wird veröffentlicht.
API-Änderungen
RecyclerView.setLayoutFrozen(boolean)
undRecyclerView.isLayoutFrozen()
werden zugunsten vonRecyclerView.suppressLayout(boolean)
undRecyclerView.isLayoutSuppressed()
eingestellt. (aosp/839414)RecyclerView.setLayoutTransition(LayoutTransition)
wird offiziell eingestellt und es wird eineIllegalArgumentException
ausgelöst, wenn die Funktion mit einem nicht nullwertigen Wert aufgerufen wird. (aosp/839414)
Fehlerkorrekturen
- Fehler in der Risikobewertung behoben, bei dem
SmoothScroller
nie beendet wird (aosp/843741) - Es wurde ein Fehler behoben, durch den
SCROLL_STATE_IDLE
möglicherweise nicht am Ende einer Scrollanimation aufgerufen wurde. (aosp/812576)
Version 1.1.0-alpha01
3. Dezember 2018
androidx.recyclerview 1.1.0-alpha01
und androidx.recyclerview-selection 1.1.0-alpha01
werden freigegeben.
androidx.recyclerview 1.1.0-alpha01
API-Änderungen
- aosp/723649: RecyclerView implementiert jetzt
NestedScrollingChild3
, sodass es darüber informiert werden kann, wenn alle übergeordneten Elemente mit verschachteltem Scrollen nicht mehr die Entfernungen für das verschachtelte Scrollen verbrauchen. WennRecyclerView.onNestedScroll(View, int, int, int, int, int)
derzeit durch Entwicklercode überschrieben wird, wird es wahrscheinlich nicht mehr aufgerufen. Stattdessen sollteRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])
überschrieben werden.
Fehlerkorrekturen
- Der Absturz beim Zusammen-/Aufklappen von Elementen in
RecyclerView
mitTransitionManager
wurde behoben (b/37129527). - Behebung eines Fehlers, durch den das Verhalten von
RecyclerView.OnItemTouchListener
nicht mit dem Verhalten vononInterceptTouchEvent
undonTouchEvent
des Ansichtssystems übereinstimmte (aosp/721235) - Einige Fehler im Zusammenhang mit dem reibungslosen Scrollen wurden behoben (aosp/729718, aosp/747168, aosp/812576)
- Die Snap-Strategie in
PagerSnapHelper
wurde für nicht typische untergeordnete Ansichten korrigiert (aosp/795752)
androidx.recyclerview-selection 1.1.0-alpha01
Fehlerkorrekturen
- Fehler bei
ConcurrentModificationException
behoben, wenn sich der Datensatz durch Entfernen der Auswahl geändert hat.
RecyclerView-Auswahl Version 1.1.0
RecyclerView-Auswahl Version 1.1.0
27. Januar 2021
androidx.recyclerview:recyclerview-selection:1.1.0
wird veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Zahlreiche Stabilitätsverbesserungen
- Die Methoden
withGestureTooltypes
undwithPointerTooltypes
wurden amSelectionTracker.Builder
eingestellt. Diese Methoden werden in einer zukünftigen Version entfernt.
RecyclerView-Selection Version 1.1.0-rc03
1. Oktober 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc03
wird veröffentlicht. Version 1.1.0-rc03 enthält diese Commits.
Fehlerkorrekturen
Vielen Dank an Stefan Kiesler für das Testen der Fehlerkorrekturen und das Feedback.
- Das Problem, dass OnClickListeners der untergeordneten Ansicht während der aktiven Auswahl unerwartet aufgerufen wurden, wurde behoben.
- Maus-Handler (Bandauswahl) > Unerwartete Scrollbewegungen fehlerfrei verarbeiten (b/167821507)
RecyclerView-Auswahl Version 1.1.0-rc02
2. September 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc02
wird veröffentlicht. Version 1.1.0-rc02 enthält diese Commits.
Top-Aktivitäten
- Es wurden mehrere Rückschritte bei der Eingabebehandlung gegenüber Version 1.0 behoben.
- Die Bibliothek wurde aktualisiert, um
onRequestDisallowInterceptTouchEvent
zu berücksichtigen. Dadurch kann sie gut mit ItemTouchHelper verwendet werden (einfach wegwischen!).
Fehlerkorrekturen
- Problem behoben, bei dem die Auswahlbibliothek
GestureDetector
-Ereignisse falsch interpretiert hat, was zu verlorenen Tippaktionen während der aktiven Auswahl geführt hat (b/165030422) - Ein Problem wurde behoben, durch das die Auswahl nicht aktualisiert wurde, um Elemente widerzuspiegeln, die aus dem Adapter entfernt wurden. (b/138932671)
- Problem behoben, bei dem RecyclerView-Elemente onClick-Ereignisse auslösten, während SelectionTracker eine aktive Auswahl hat (b/161162268)
onRequestDisallowInterceptTouchEvent
wird jetzt richtig verarbeitet- Das Problem, dass beim Scrollen mit der Maus auf „Q“ das Zeichen
”Cannot call this method in a scroll callback”
angezeigt wurde, wurde behoben. - Die Dokumentation wurde aktualisiert (insbesondere in
StableIdKeyProvider
), um die Anforderungen an die RecyclerView-Instanz klar zu formulieren.
Recyclerview-Selection Version 1.1.0-rc01
5. Februar 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc01
wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem es bei der Interaktion mit einem scrollbaren AppBarLayout schwierig war, mit einer Geste durch RecyclerView zu scrollen (aosp/1193934)
RecyclerView-Auswahlversion 1.1.0-beta01
4. Dezember 2019
androidx.recyclerview:recyclerview-selection:1.1.0-beta01
wird veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Allgemeine Verbesserungen der Stabilität im Zusammenhang mit Schutzmaßnahmen und der Verwaltung des internen Zustands.
Fehlerkorrekturen
- Die Verwaltung des Bibliotheksstatus und die Interpretation von CANCEL-Ereignissen wurden verbessert, was zu Stabilitätsverbesserungen geführt hat.
API-Änderungen
- Klassen und Methoden, denen der Parameter „selection key type“ fehlte, wurde dieser hinzugefügt.
- Eingestellte Methoden:
- SelectionTracker.Builder#withPointerTooltype
- SelectionTracker.Builder#withGestureTooltype
- Diese Methoden sollten es Entwicklern ermöglichen, das Verhalten von Mauszeiger oder Touch-Gesten anderen Tooltypen als den Standardtypen zuzuordnen*. Die Absicht war gut, aber bei der weiteren Nutzung wurde klar, dass die Erwartungen der Nutzer in Bezug auf das Eingabeverhalten sehr tooltypspezifisch sind. Außerdem werden „passive“ Eingabestifte vom Android-Eingabesystem als FINGER-Tooltyp betrachtet.
- Die Standardtooltypen sind FINGER für Touch-Gesten und MOUSE für den Mauszeiger.