Puoi utilizzare un elenco con più tipi di elementi per visualizzare tipi di contenuti misti, come testo, immagini ed elementi interattivi.
Compatibilità delle versioni
Questa implementazione richiede che il valore minSDK del progetto sia impostato sul livello API 21 o superiore.
Dipendenze
Aggiungere più tipi di articoli
Puoi specificare il tipo di contenuti per ogni elemento del layout quando componi un elenco o una griglia con più tipi di elementi:
@Composable fun ListWithMultipleItems(messages: List<Any>) { LazyColumn { items( messages.size, contentType = { it } ) { for (message in messages) when (message) { is MediaStore.Audio -> AudioMessage(message) is Text -> TextMessage(message) } } } } @Composable fun AudioMessage(message: MediaStore.Audio) { TODO("Not yet implemented.") } @Composable fun TextMessage(message: Text) { TODO("Not yet implemented.") } data class SampleMessage(val text: String, val content: Any)
Punti chiave del codice
- Specifica il tipo di contenuti per ogni elemento impostando
contentType
initems()
. - Mappa ogni tipo di contenuto a un composable corrispondente. Ad esempio,
Audio
è uncontentType
definito altrove e mappato a un composableAudioMessage
. - Compose riutilizza i composabili visualizzati per ogni elemento di un determinato tipo di contenuti.
Risultati

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
Elenchi e griglie consentono alla tua app di mostrare le raccolte in un formato piacevole dal punto di vista visivo e facilmente fruibile dagli utenti.

Mostrare componenti interattivi
Scopri come le funzioni composable possono aiutarti a creare facilmente magnifici componenti dell'interfaccia utente basati sul sistema di progettazione Material Design.

Nozioni di base sulla composizione (raccolta di video)
Questa serie di video introduce varie API Compose,
mostrando rapidamente cosa è disponibile e come utilizzarle.
Domande o feedback
Visita la nostra pagina delle domande frequenti e scopri le guide rapide o contattaci per farci sapere cosa ne pensi.