La libreria media3-ui-compose-material3 gestisce internamente sia la gestione dello stato sia lo stile Material3. Per saperne di più su quale libreria utilizzare,
consulta la panoramica di Media3 Compose.
// The library provides styled UI components Row { SeekBackButton(player) PlayPauseButton(player) SeekForwardButton(player) }
Personalizzare i componenti Material3
Sebbene media3-ui-compose-material3 fornisca componenti che seguono il design Material 3, hai comunque il controllo completo dei temi. Puoi personalizzare colori,
tipografia e forme racchiudendo la UI del player in un MaterialTheme.
Ad esempio, per modificare il colore di PlayPauseButton, puoi fornire un
colorScheme personalizzato:
MaterialTheme( colorScheme = lightColorScheme( primary = Color.Red, // Change the primary color for the button onPrimary = Color.White, ) ) { // The PlayPauseButton will now use the custom colors PlayPauseButton(player) }
Componenti Material3 disponibili
La libreria media3-ui-compose-material3 fornisce un insieme di componenti componibili predefiniti
per i controlli comuni del player. Ecco alcuni componenti che puoi utilizzare direttamente
nella tua app:
| Componente | Descrizione |
|---|---|
PlayPauseButton |
Un pulsante che alterna la riproduzione e la pausa. |
SeekBackButton |
Un pulsante per tornare indietro di un incremento definito. |
SeekForwardButton |
Un pulsante per andare avanti di un incremento definito. |
NextButton |
Un pulsante per passare all'elemento multimediale successivo. |
PreviousButton |
Un pulsante per passare all'elemento multimediale precedente. |
RepeatButton |
Un pulsante per scorrere le modalità di ripetizione. |
ShuffleButton |
Un pulsante per attivare/disattivare la modalità di riproduzione casuale. |
MuteButton |
Un pulsante per attivare e disattivare l'audio del player. |
PositionAndDurationText |
Un composable di testo che mostra la posizione corrente e la durata totale. |
PositionText |
Un composable di testo che mostra la posizione attuale. |
DurationText |
Un composable di testo che mostra la durata totale. |
RemainingDurationText |
Un composable di testo che mostra la durata rimanente. |
Questo elenco non è esaustivo. Per tutti i componenti disponibili, consulta il riferimento API della libreria.
Altri due componenti predefiniti che probabilmente ti serviranno sono correlati alla gestione della superficie e si trovano nel modulo media3-ui-compose perché non hanno temi Material.
| Componente | Descrizione |
|---|---|
ContentFrame |
Una superficie per la visualizzazione di contenuti multimediali che gestisce le proporzioni, il ridimensionamento e un otturatore |
PlayerSurface |
Superficie grezza che avvolge SurfaceView e TextureView in AndroidView |