Puoi gestire set di dati di grandi dimensioni e contenuti dinamici con le griglie lazy, migliorando le prestazioni dell'app. Con i composabili della griglia lazy, puoi visualizzare gli elementi in un contenuto scorrevole, su più colonne o righe.
Compatibilità delle versioni
Questa implementazione richiede che il valore minSDK del progetto sia impostato sul livello API 21 o superiore.
Dipendenze
Decidi l'orientamento della griglia
I composabili LazyHorizontalGrid e LazyVerticalGrid supportano la visualizzazione degli elementi in una griglia. Una griglia verticale lazy mostra i suoi elementi
in un contenitore scorrevole verticalmente, su più colonne, mentre
le griglie orizzontali lazy hanno lo stesso comportamento sull'asse orizzontale.
Creare una griglia scorrevole
Il seguente codice crea una griglia con scorrimento orizzontale con tre colonne:
@Composable fun ScrollingGrid() { val itemsList = (0..15).toList() val itemModifier = Modifier .border(1.dp, Color.Blue) .width(80.dp) .wrapContentSize() LazyHorizontalGrid( rows = GridCells.Fixed(3), horizontalArrangement = Arrangement.spacedBy(16.dp), verticalArrangement = Arrangement.spacedBy(16.dp) ) { items(itemsList) { Text("Item is $it", itemModifier) } item { Text("Single item", itemModifier) } } }
Punti chiave del codice
- Il composable
LazyHorizontalGriddetermina l'orientamento orizzontale della griglia.- Per creare una griglia verticale, utilizza
LazyVerticalGrid.
- Per creare una griglia verticale, utilizza
- La proprietà
rowsspecifica come organizzare i contenuti della griglia.- Per una griglia verticale, utilizza la proprietà
columnsper specificare l'ordinamento.
- Per una griglia verticale, utilizza la proprietà
items(itemsList)aggiungeitemsListaLazyHorizontalGrid. La funzione lambda visualizza un componibileTextper ogni elemento e imposta il testo sulla descrizione dell'elemento.item()aggiunge un singolo elemento aLazyHorizontalGrid, mentre la funzione lambda rappresenta un singolo componibileTextin modo simile aitems().GridCells.Fixeddefinisce il numero di righe o colonne.Per creare una griglia con il maggior numero possibile di righe, imposta il numero di righe utilizzando
GridCells.Adaptive.Nel codice seguente, il valore
20.dpspecifica che ogni colonna deve essere di almeno 20 dp e che tutte le colonne devono avere la stessa larghezza. Se lo schermo è largo 88 dp, ci sono 4 colonne da 22 dp ciascuna.
Risultati
LazyHorizontalGrid.Raccolte che contengono questa guida
Questa guida fa parte di queste raccolte di guide rapide selezionate che coprono obiettivi di sviluppo Android più ampi:
Mostrare un elenco o una griglia
Mostrare componenti interattivi