Vista sul riciclo
Questa tabella elenca tutti gli artefatti nel gruppo androidx.recyclerview
.
Elemento | Release stabile | Candidato di rilascio | Versione beta | Versione alpha |
---|---|---|---|---|
recyclerview | 1.3.2 | - | - | 1.4.0-alpha01 |
selettore-visualizzazione-del-ciclatore | 1.1.0 | - | - | 1.2.0-alpha01 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza a RecyclerView, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per l'app o il modulo:
Trendy
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") }
Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze delle build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.4
Versione 1.4.0-alpha01
18 ottobre 2023
androidx.recyclerview:recyclerview:1.4.0-alpha01
viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.
Modifiche alle API
- Aggiungi l'API
RecyclerView$LayoutManager#isLayoutReversed
. (I4970e)
Correzioni di bug
- Correzione di un bug che causava arresti anomali sporadici durante le animazioni (I42f22b) (incluso nella versione 1.3.2)
Versione 1.3.2
Versione 1.3.2
18 ottobre 2023
androidx.recyclerview:recyclerview:1.3.2
viene rilasciato. La versione 1.3.2 contiene questi commit.
Correzioni di bug
- Correggi un bug che causava arresti anomali sporadici durante le animazioni. (I42f22b)
Versione 1.3.1
Versione 1.3.1
26 luglio 2023
Viene rilasciato androidx.recyclerview:recyclerview:1.3.1
, senza modifiche dalla versione 1.3.1-rc01. La versione 1.3.1 contiene questi commit.
Per le note di rilascio della release precedente, fai riferimento alla nostra pagina delle note di rilascio
Versione 1.3.1-rc01
24 maggio 2023
androidx.recyclerview:recyclerview:1.3.1-rc01
viene rilasciato. La versione 1.3.1-rc01 contiene questi commit.
Gli utenti di ViewPager2 devono eseguire l'aggiornamento almeno alla versione 1.1.0-beta02 quando eseguono l'aggiornamento a questa versione di RecyclerView
per evitare arresti anomali.
Modifiche alle API
- Aggiungi nuovi metodi
setDebugAssertionsEnabled
esetVerboseLoggingEnabled
che possono aiutare a eseguire il debug dei problemi relativi aRecyclerView
nelle app. (I514b9)
Correzioni di bug
- Correggi gli arresti anomali per gli utenti di
ViewTreeLifecycleOwner
(inclusoComposeView
) ricollegando temporaneamente le viste scollegate temporaneamente quando chiamanoonBind
. (I7244f2c, b/265347515, b/283288295)
Versione 1.3.0
Versione 1.3.0
8 marzo 2023
Viene rilasciato androidx.recyclerview:recyclerview:1.3.0
, senza modifiche dalla versione 1.3.0-rc01. La versione 1.3.0 contiene questi commit.
Modifiche importanti dalla versione 1.2.0
- Questa release contiene miglioramenti delle prestazioni (precedentemente inclusi in 1.3.0-alpha02 e 1.3.0-beta01) quando utilizzata con Jetpack Compose. Se usi la finestra
1.2.0-beta02
o una versione successiva e utilizzaviMyComposeAdapter
eDisposeOnViewTreeLifecycleDestroyed
ViewCompositionStrategy
descritti nelle precedenti linee guida sull'interoperabilità, devi rimuoverli, poiché non rappresentano più un miglioramento rispetto allo stato predefinito. - È stato aggiunto un nuovo metodo
ConcatAdapter.getWrappedAdapterAndPosition
per consentire di recuperare le informazioni sull'adattatore con wrapping in situazioni in cui non si dispone di unViewHolder
, ad esempioSpanSizeLookup
(I2bd4c, b/191543920)
Versione 1.3.0-rc01
21 settembre 2022
androidx.recyclerview:recyclerview:1.3.0-rc01
viene rilasciato. La versione 1.3.0-rc01 contiene questi commit.
- Nessuna modifica dall'ultima release
Versione 1.3.0-beta02
10 agosto 2022
androidx.recyclerview:recyclerview:1.3.0-beta02
viene rilasciato. La versione 1.3.0-beta02 contiene questi commit.
Modifiche alle API
- Rimosse le annotazioni nullabilità aggiunte in 1.3.0-beta01 poiché rappresentavano un cambiamento significativo non compatibile con la fonte per gli utenti Kotlin (I7a258,I1557e6,I8db76)
Versione 1.3.0-beta01
29 giugno 2022
androidx.recyclerview:recyclerview:1.3.0-beta01
viene rilasciato. La versione 1.3.0-beta01 contiene questi commit.
Nuove funzionalità
- Questa versione beta contiene miglioramenti delle prestazioni (precedentemente inclusi in 1.3.0-alpha02 quando utilizzata con Jetpack Compose. Se usi la finestra
1.2.0-beta02
o una versione successiva e utilizzaviMyComposeAdapter
eDisposeOnViewTreeLifecycleDestroyed
ViewCompositionStrategy
descritti nelle precedenti linee guida sull'interoperabilità, devi rimuoverli, poiché non rappresentano più un miglioramento rispetto allo stato predefinito.
Modifiche alle API
- Sono state aggiunte annotazioni relative al valore null per una serie di metodi e parametri al fine di migliorare gli avvisi di lint per gli utenti Java e l'interoperabilità per gli utenti Kotlin. Questa modifica potrebbe causare un errore nel codice sorgente per alcuni utenti Kotlin e causare ulteriori avvisi/errori di lint per alcuni utenti Java. (I61829, b/236487044; Ia0b6f; I6f119, b/236487209; Ibe1de, b/236487210)
Correzioni di bug
- Assicurati che le griglie vengano trattate come griglie dai servizi di accessibilità impostando un nome della classe di informazioni del nodo A11y. (I12812)
Versione 1.3.0-alpha02
6 aprile 2022
androidx.recyclerview:recyclerview:1.3.0-alpha02
viene rilasciato. La versione 1.3.0-alpha02 contiene questi commit.
Modifiche alle API
- Aggiunge metodi
BuildCompat
sperimentali per gli SDK futuri (Iafd82, b/207528937) - È stato aggiunto un nuovo metodo
ConcatAdapter.getWrappedAdapterAndPosition
per consentire di recuperare le informazioni sull'adattatore aggregate in situazioni in cui non hai un Viewholder, ad esempioSpanSizeLookup
(I2bd4c, b/191543920)
Correzioni di bug
- Integrazione con la nuova libreria PoolingContainer AndroidX (Ib89d2)
- Regola la distanza di scorrimento per l'azione di accessibilità (If74ae)
Versione 1.3.0-alpha01
15 settembre 2021
androidx.recyclerview:recyclerview:1.3.0-alpha01
viene rilasciato. La versione 1.3.0-alpha01 contiene questi commit.
Nuove funzionalità
- Aggiunto il supporto per RecyclerView per stretch overscroll. (Iab877)
RecyclerView-Selection Versione 1.2.0
Versione 1.2.0-alpha01
5 maggio 2021
androidx.recyclerview:recyclerview-selection:1.2.0-alpha01
viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.
Correzioni di bug
- Risolvi un problema per cui la mappatura di chiave/posizione in KeyProvider andava persa mentre la voce non era ancora stata riciclata. (b/145767095)
Versione 1.2.1
Versione 1.2.1
2 giugno 2021
androidx.recyclerview:recyclerview:1.2.1
viene rilasciato. La versione 1.2.1 contiene questi commit.
Correzioni di bug
- Gli elementi
ViewHolder
all'interno di unConcatAdapter
restituiscono ora la posizione corretta dell'adattatore quando viene eseguita una query nel callbackonViewRecycled
. (b/187339376)
Versione 1.2.0
Versione 1.2.0
7 aprile 2021
androidx.recyclerview:recyclerview:1.2.0
viene rilasciato. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
ConcatAdapter: questo nuovo adattatore consente di concatenare facilmente più adattatori sullo stesso RecyclerView. Per ulteriori informazioni, vedi il post del blog.
- Nell'ambito di questa modifica, l'API
ViewHolder.getAdapterPosition
è deprecata e viene sostituita da due nuovi metodi:- getBindingAdapterPosition restituisce la posizione relativa all'adattatore che ha associato l'elemento.
- getTotalAdapterPosition restituisce la posizione relativa all'intero RecyclerView.
Ripristino dello stato lento: RecyclerView Adapter ora può ritardare il ripristino dello stato fino al caricamento dei relativi contenuti. Per ulteriori dettagli, consulta la documentazione.
Versione 1.2.0-rc01
24 marzo 2021
androidx.recyclerview:recyclerview:1.2.0-rc01
viene rilasciato. La versione 1.2.0-rc01 contiene questi commit.
Correzioni di bug
- Ora
ConcatAdapter.Config.Builder
contiene valori predefiniti corrispondenti aConfig.DEFAULT
(b/157169835)
Versione 1.2.0-beta02
24 febbraio 2021
androidx.recyclerview:recyclerview:1.2.0-beta02
viene rilasciato. La versione 1.2.0-beta02 contiene questi commit.
Correzioni di bug
- È stato risolto il problema a causa del quale la spaziatura interna superiore causava lo spostamento del bagliore di scorrimento laterale destro verso l'alto nell'area riempita, anziché verso il basso per rispettare la spaziatura interna. (I6b61d, b/118399122)
Versione 1.2.0-beta01
2 dicembre 2020
androidx.recyclerview:recyclerview:1.2.0-beta01
viene rilasciato senza modifiche dal giorno 1.2.0-alpha06
. La versione 1.2.0-beta01 contiene questi commit.
Versione 1.2.0-alpha06
1° ottobre 2020
androidx.recyclerview:recyclerview:1.2.0-alpha06
viene rilasciato. La versione 1.2.0-alpha06 contiene questi commit.
Nuove funzionalità
- Aggiunto il supporto per l'aggiunta di più RecyclerListener. (I70ad8, b/145767095)
Modifiche alle API
- Deprecato RecyclerView.setRecyclerListener(RecyclerListener). (I70ad8, b/145767095)
Versione 1.2.0-alpha05
22 luglio 2020
androidx.recyclerview:recyclerview:1.2.0-alpha05
viene rilasciato. La versione 1.2.0-alpha05 contiene questi commit.
Correzioni di bug
- È stato risolto il problema a causa del quale, se un RecyclerView aveva un solo elemento attivo, la messa a fuoco in avanti o all'indietro non sposterà lo stato attivo. (6f36b3)
- Risolto il problema di
ArrayIndexOutOfBoundsException
inStaggeredGridLayoutManager
(49b601, b/122303625, b/74877618, b/160193663, b/37086625) - È stato corretto un bug di misurazione per cui, in circostanze specifiche, RecyclerView finiva per non mostrare in maniera inappropriata i suoi figli. (89040c, b/138734786)
Contributi esterni
- Ringraziamo Kolin Krewinkel per conto di Facebook per il contributo.
Versione 1.2.0-alpha04
24 giugno 2020
androidx.recyclerview:recyclerview:1.2.0-alpha04
viene rilasciato. La versione 1.2.0-alpha04 contiene questi commit.
Modifiche alle API
MergeAdapter
è stato rinominato inConcatAdapter
per evitare confusione con diversi comportamenti di unione dei dati (c0540c, b/158019211).
Correzioni di bug
- Miglioramenti allo scorrimento automatico quando tutti gli elementi visibili vengono rimossi (fe8670, b/154124815)
Versione 1.2.0-alpha03
29 aprile 2020
androidx.recyclerview:recyclerview:1.2.0-alpha03
viene rilasciato. La versione 1.2.0-alpha03 contiene questi commit.
Nuove funzionalità
- RecyclerView ora ha un metodo
nestedScrollBy
che consente lo scorrimento programmatico che interagisce con lo scorrimento nidificato: (Ibaa58)
Versione 1.2.0-alpha02
1° aprile 2020
androidx.recyclerview:recyclerview:1.2.0-alpha02
viene rilasciato. La versione 1.2.0-alpha02 contiene questi commit.
Questa e le versioni successive di RecyclerView non sono compatibili con le versioni precedenti di ViewPager2. Se al momento utilizzi androidx.viewpager2:viewpager2:1.0.0
o una versione precedente, assicurati di eseguire l'aggiornamento a androidx.viewpager2:viewpager2:1.1.0-alpha01
.
Nuove funzionalità
MergeAdapter
- MergeAdapter: un nuovo adattatore RecyclerView che può combinare più adattatori in modo lineare.
MyAdapter adapter1 = ...; AnotherAdapter adapter2 = ...; MergeAdapter merged = new MergeAdapter(adapter1, adapter2); recyclerView.setAdapter(mergedAdapter);
Per l'esempio riportato sopra, MergeAdapter mostrerà gli elementi di
adapter1
seguiti daadapter2
.Ripristino dello stato lento di
RecyclerView.Adapter
:È stata aggiunta alla classe
RecyclerView.Adapter
una nuova API che consente all'adattatore di controllare quando ripristinare lo stato del layout.Ad esempio, puoi chiamare:
myAdapter.setStateRestorationStrategy(StateRestorationStrategy.WHEN_NOT_EMPTY);
per consentire a RecyclerView di attendere che l'adattatore non sia vuoto prima di ripristinare la posizione di scorrimento.
CollectionInfo e CollectionItemInfo non verranno più completate per impostazione predefinita.
Se vuoi che i servizi di accessibilità (ad esempio TalkBack) continuino a indicare il numero e l'indice degli elementi all'utente, dovrai compilare personalmente CollectionInfo e CollectionItemInfo.
Questi oggetti non sono più compilati nel framework perché quest'ultimo non è in grado di determinare il numero di elementi percepiti dall'utente (come separatori, intestazioni o elementi RecyclerView che rappresentano più elementi percepiti).
Correzioni di bug
- RecyclerView ora evita l'ancoraggio sulle viste all'esterno dell'area visibile quando le dimensioni dell'area visibile cambiano
- Risolto un bug in DiffUtil per cui poteva calcolare in modo errato la differenza quando un elemento originale nel primo elenco veniva duplicato più volte nel secondo. (b/123376278)
Versione 1.2.0-alpha01
18 dicembre 2019
androidx.recyclerview:recyclerview:1.2.0-alpha01
viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.
Correzioni di bug
- Risolti problemi di minore entità relativi a Fastscroller relativi a disegno RTL e precisione al tocco (b/143789932, aosp/1130438)
- È stato risolto l'arresto anomalo in ItemTouchHelper quando viene rimosso da RecyclerView mentre sono in esecuzione le animazioni ItemTouchHelper (b/140447176, aosp/1167575)
Versione 1.1.0
Versione 1.1.0
20 novembre 2019
androidx.recyclerview:recyclerview:1.1.0
viene rilasciato. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
PagerSnapHelper
eLinearSnapHelper
ora prendono in considerazione la spaziatura interna di RecyclerView a prescindere dal valore diclipToPadding
(b/139452422, b/139012032, aosp/1103182, aosp/1106715, aosp/1130728{/12)RecyclerView.setLayoutTransition(LayoutTransition)
è formalmente deprecato e genererà unIllegalArgumentException
quando richiamato con un valore diverso da null. Usa invece il criterioRecyclerView.setItemAnimator(ItemAnimator)
. (aosp/839414).- aosp/723649: RecyclerView ora implementa
NestedScrollingChild3
, consentendo di sapere quando tutti i suoi elementi principali a scorrimento nidificato hanno smesso di consumare distanze di scorrimento nidificate. Se al momento il codice sviluppatore sostituisceRecyclerView.onNestedScroll(View, int, int, int, int, int)
, è probabile che non venga più chiamato e cheRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])
debba essere sostituito. - Ora RecyclerView ha un attributo di stile predefinito:
recyclerViewStyle
, che consente di impostare lo stile predefinito nel tuo tema - L'API ViewCompat per le azioni di accessibilità non interrompe più RecyclerView ItemDelega.
- È possibile eseguire l'override di
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])
per personalizzare la quantità di spazio di layout da aggiungere ai lati del RecyclerView associato. (aosp/931259). - È stato aggiunto un nuovo sovraccarico di smoothscrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)
, che ti consente di specificare una durata in millisecondi della durata dell'animazione. (aosp/952807).
Versione 1.1.0-rc01
23 ottobre 2019
androidx.recyclerview:recyclerview:1.1.0-rc01
viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.
Correzioni di bug
- Risolto il problema "L'applicazione non risponde" durante la sostituzione di
RecyclerViewAccessibilityDelegate.ItemDelegate
(aosp/1138057, aosp/1133434)
Versione 1.1.0-beta05
9 ottobre 2019
androidx.recyclerview:recyclerview:1.1.0-beta05
viene rilasciato. La versione 1.1.0-beta05 contiene questi commit.
Modifiche alle API
- A seguito di aosp/1106715 e aosp/1103182, ora LinearSnapHelper e PagerSnapHelper restituiranno la vista che si trova al centro dei limiti di RecyclerView, meno la spaziatura interna, nonostante il valore di clipToPadding. (aosp/1130728).
Correzioni di bug
- Risolto un problema per cui RecyclerView generava nodi di accessibilità duplicati per gli elementi secondari di RecyclerView. (aosp/1130618).
- Risolto un problema per cui le gerarchie di accessibilità virtuale in RecyclerView non funzionavano.
- Risolto il problema per cui non venivano utilizzati oggetti delegati personalizzati.
Versione 1.1.0-beta04
5 settembre 2019
androidx.recyclerview:recyclerview:1.1.0-beta04
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Correzioni di bug
PagerSnapHelper
eLinearSnapHelper
ora prendono in considerazione la spaziatura interna di RecyclerView a prescindere dal valore diclipToPadding
(b/139452422, b/139012032, aosp/1103182, aosp/1106715)- Risolto il bug per cui RecyclerView non consentiva l'intercettazione del tocco quando il pre-scorrimento nidificato causava lo scorrimento di un
NestedScrollingParent
(b/138668210, aosp/1105373). Ciò avvantaggia librerie come ViewPager2. - RecyclerView ora viene regolarmente inviata a
SCROLL_STATE_DRAGGING
prima dell'invio dei pre-scorrimenti nidificati (aosp/1105373) - Il pre-scorrimento nidificato non viene più eseguito prima che il gesto superi l'area al tocco (b/139530818, aosp/1105373)
- Gli argomenti
dx
edy
inviati a pre-scorrimenti nidificati vengono azzerati quando RecyclerView non può scorrere in quella direzione (aosp/1105373)
Versione 1.1.0-beta03
15 agosto 2019
androidx.recyclerview:recyclerview:1.1.0-beta03
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Modifiche alle API
- Ora RecyclerView invia le distanze di scorrimento tramite
View.onScrollChanged(int l, int t, int oldl, int oldt)
, in modo che i servizi di accessibilità vengano avvisati con precisione delle modifiche di scorrimento. (aosp/1007823).
Correzioni di bug
- Risolto un grave bug di overflow dello stack relativo a RecyclerView e all'accessibilità. (aosp/1099577).
Versione 1.1.0-beta02
7 agosto 2019
androidx.recyclerview:recyclerview:1.1.0-beta02
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- Ora RecyclerView ha un attributo di stile predefinito:
recyclerViewStyle
, che consente di impostare lo stile predefinito nel tuo tema
Correzioni di bug
- È stato corretto un bug per cui RecyclerView non consentiva l'intercettazione del tocco durante lo scorrimento causando lo scorrimento di NestedscrollingParent. (b/131115697, aosp/1055911)
Versione 1.1.0-beta01
2 luglio 2019
androidx.recyclerview:recyclerview:1.1.0-beta01
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- Ora
RecyclerView
partecipa allo scorrimento nidificato quando viene avviato uno scorrimento tramite gli eventi di accessibilità. (aosp/973584).
Versione 1.1.0-alpha06
5 giugno 2019
androidx.recyclerview:recyclerview:1.1.0-alpha06
e androidx.recyclerview:recyclerview-selection:1.1.0-alpha06
vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- È stato aggiunto un nuovo sovraccarico di smoothscrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)
, che ti consente di specificare una durata in millisecondi della durata dell'animazione. (aosp/952807).
Modifiche alle API
GridLayoutManager
eStaggeredGridLayoutManager
non etichettano più automaticamente gli elementi dell'intervallo completo come intestazioni per motivi di accessibilità (aosp/969703)- Mantieni l'ordine di selezione (per data e ora di creazione) in
recyclerview-selection
(aosp/937279)
Correzioni di bug
- È stato risolto un bug per cui
RecyclerView
lanciava velocità errate in una situazione di scorrimento nidificata. (aosp/961642). - Aggiunti miglioramenti della stabilità a
recyclerview-selection
(aosp/960213, aosp/926296)
Versione 1.1.0-alpha05
7 maggio 2019
androidx.recyclerview:recyclerview:1.1.0-alpha05
e androidx.recyclerview:recyclerview-selection:1.1.0-alpha05
vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- È possibile eseguire l'override di
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])
per personalizzare la quantità di spazio di layout da aggiungere ai lati del RecyclerView associato. (aosp/931259).
Modifiche alle API
- Aggiungi l'API per recuperare l'elemento disegnabile
DividerItemDecoration
(aosp/937282) - Ritira
LinearLayout.getExtraLayoutSpace(RecyclerVew.State)
a favore di un nuovo meccanismo che consente di avere spazio di layout aggiuntivo personalizzato su entrambi i lati. Il nuovo metodo èLinearLayout.calculateExtraLayoutSpace(RecyclerView.state, int[])
(aosp/931259)
Correzioni di bug
- Selezione gestuale pulita (aosp/940781)
- Mantieni l'ordine di selezione (per ora di creazione) (b/128455535)
Versione 1.1.0-alpha04
3 aprile 2019
androidx.recyclerview:recyclerview:1.1.0-alpha04
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Correzioni di bug
- In precedenza, l'elemento RV OnItemTouchListener non ha potuto intercettare ACTION_UP, impedendo a OnItemTouchListener di bloccare altro codice di rispondere a ACTION_UP. Il problema ora è stato risolto (aosp/916137)
Versione 1.1.0-alpha03
13 marzo 2019
androidx.recyclerview:recyclerview:1.1.0-alpha03
viene rilasciato. L'elenco completo dei commit inclusi in questa versione è disponibile qui.
Nuove funzionalità
GridLayoutManager
: attivazione, stima delle dimensioni della barra di scorrimentoGridLayoutManager
con risoluzione superiore (aosp/838836):- Utilizza le informazioni sull'intervallo per stimare le dimensioni della barra di scorrimento per un elemento
GridLayoutManager
. - Per attivarla, chiama
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)
passando in true. - Per saperne di più, consulta la documentazione su
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)
.
- Utilizza le informazioni sull'intervallo per stimare le dimensioni della barra di scorrimento per un elemento
Correzioni di bug
- Accessibilità: si è verificato un bug per cui, dopo aver riciclato un Viewholder e poi rimbalzato, l'elemento ItemDelegato associato all'elemento
RecyclerViewAccessibilityDelegate
di RecyclerView non veniva associato all'itemView di Viewholder, causando un problema di accessibilità. Il problema ora è stato risolto (aosp/917740).
Versione 1.1.0-alpha02
30 gennaio 2019
androidx.recyclerview:recyclerview 1.1.0-alpha02
viene rilasciato.
Modifiche alle API
RecyclerView.setLayoutFrozen(boolean)
eRecyclerView.isLayoutFrozen()
sono deprecati a favore diRecyclerView.suppressLayout(boolean)
eRecyclerView.isLayoutSuppressed()
. (aosp/839414).RecyclerView.setLayoutTransition(LayoutTransition)
è formalmente deprecato e genererà unIllegalArgumentException
quando richiamato con un valore diverso da null. (aosp/839414).
Correzioni di bug
- Correzione di un bug nei camper in cui
SmoothScroller
non viene mai interrotto (aosp/843741) - È stato corretto un bug a causa del quale non era possibile chiamare
SCROLL_STATE_IDLE
alla fine di un'animazione a scorrimento. (aosp/812576).
Versione 1.1.0-alpha01
3 dicembre 2018
androidx.recyclerview 1.1.0-alpha01
e androidx.recyclerview-selection 1.1.0-alpha01
vengono rilasciati.
androidx.recyclerview 1.1.0-alpha01
Modifiche alle API
- aosp/723649: RecyclerView ora implementa
NestedScrollingChild3
, consentendo di sapere quando tutti i suoi elementi principali a scorrimento nidificato hanno smesso di consumare distanze di scorrimento nidificate. Se al momento il codice sviluppatore sostituisceRecyclerView.onNestedScroll(View, int, int, int, int, int)
, è probabile che non venga più chiamato e cheRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])
debba essere sostituito.
Correzioni di bug
- È stato risolto l'arresto anomalo durante l'utilizzo di
TransitionManager
per comprimere/espandere l'elemento inRecyclerView
(b/37129527). - Risolto il bug per cui il comportamento di
RecyclerView.OnItemTouchListener
non era coerente con quello dionInterceptTouchEvent
eonTouchEvent
del sistema di visualizzazione (aosp/721235) - Sono stati corretti alcuni bug relativi alle custodie sui bordi relativi allo scorrimento fluido (aosp/729718, aosp/747168, aosp/812576)
- È stata corretta la strategia di agganciamento in
PagerSnapHelper
per gestire visualizzazioni secondarie non tipiche (aosp/795752)
androidx.recyclerview-selection 1.1.0-alpha01
Correzioni di bug
- È stato risolto il problema
ConcurrentModificationException
quando il set di dati veniva modificato con la rimozione della selezione.
RecyclerView-Selection Versione 1.1.0
RecyclerView-Selection Versione 1.1.0
27 gennaio 2021
androidx.recyclerview:recyclerview-selection:1.1.0
viene rilasciato. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
- Numerosi miglioramenti della stabilità.
- Metodi
withGestureTooltypes
ewithPointerTooltypes
deprecati il giornoSelectionTracker.Builder
. Questi metodi verranno rimossi in una release futura.
RecyclerView-Selection Versione 1.1.0-rc03
1° ottobre 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc03
viene rilasciato. La versione 1.1.0-rc03 contiene questi commit.
Correzioni di bug
Grazie a Stefan Kiesler per aver provato le correzioni e il feedback.
- È stato risolto il problema a causa del quale gli OnClickListener di visualizzazione figlio venivano chiamati inaspettatamente durante la selezione attiva.
- Gestore del mouse (selezione banda) > Consente di gestire agevolmente gli scorrimenti imprevisti. (b/167821507)
RecyclerView-Selection Versione 1.1.0-rc02
2 settembre 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc02
viene rilasciato. La versione 1.1.0-rc02 contiene questi commit.
In evidenza
- Corrette diverse regressioni dalla versione 1.0 nella gestione dell'input.
- È stata aggiornata la raccolta in onore di
onRequestDisallowInterceptTouchEvent
, che consente un'ottima riproduzione con ItemTouchHelper (basta farla scorrere).
Correzioni di bug
- Risolto il problema per cui la libreria di selezione interpretava erroneamente gli eventi
GestureDetector
con conseguente perdita di tocchi durante la selezione attiva (b/165030422) - È stato risolto il problema a causa del quale la selezione non veniva aggiornata in modo da riflettere gli elementi rimossi dall'adattatore. (b/138932671)
- È stato risolto il problema a causa del quale gli elementi RecyclerView attivavano eventi FHIR mentre SelectionTracker ha una selezione attiva (b/161162268)
- Ora gestisce
onRequestDisallowInterceptTouchEvent
correttamente - È stato risolto il problema a causa del quale veniva rilevato
”Cannot call this method in a scroll callback”
durante lo scorrimento del mouse su Q - Documenti aggiornati (soprattutto in
StableIdKeyProvider
) per indicare chiaramente i requisiti dell'istanza RecyclerView
Recyclerview-Selection Versione 1.1.0-rc01
5 febbraio 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc01
viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.
Correzioni di bug
- Risolto il problema per cui RecyclerView era difficile da scorrere con la selezione di un gesto se interagisce con un AppBarLayout scorrevole (aosp/1193934)
RecyclerView-Selection Versione 1.1.0-beta01
4 dicembre 2019
androidx.recyclerview:recyclerview-selection:1.1.0-beta01
viene rilasciato. La versione 1.1.0-beta01 contiene questi commit.
Miglioramenti generali della stabilità relativi ai controlli difensivi e alla gestione dello stato interno.
Correzioni di bug
- Gestione migliorata dello stato della libreria e interpretazione degli eventi ANNULLA, con conseguente miglioramento della stabilità.
Modifiche alle API
- Aggiunto il parametro del tipo di chiave di selezione alle classi e ai metodi in cui manca.
- Metodi deprecati:
- SelectionTracker.Builder#withPointerTooltype
- SelectionTracker.Builder#with GboardTooltype
- Questi metodi esistevano per l'intento di consentire agli sviluppatori di mappare i comportamenti dei puntatori o dei gesti a tipi di strumenti diversi da quelli predefiniti*. L'intento era buono, ma dopo un ulteriore utilizzo è emerso che le aspettative degli utenti in merito al comportamento di input sono molto specifiche per il tipo di strumento. Inoltre, per quanto riguarda il sistema di input Android, gli stili "passivi" sono un tipo di strumento FINGER.
- I tipi di strumenti predefiniti sono DITO per Gesto e MOUSE per Puntatore.