La bibliothèque media3-ui-compose-material3 gère en interne la gestion de l'état et le style Material3. Pour savoir quelle bibliothèque utiliser, consultez la présentation de Media3 Compose.
// The library provides styled UI components Row { SeekBackButton(player) PlayPauseButton(player) SeekForwardButton(player) }
Personnaliser les composants Material3
Bien que media3-ui-compose-material3 fournisse des composants qui suivent la conception Material3, vous conservez un contrôle total sur la thématisation. Vous pouvez personnaliser les couleurs, la typographie et les formes en encapsulant l'UI de votre lecteur dans un MaterialTheme.
Par exemple, pour modifier la couleur de PlayPauseButton, vous pouvez fournir un colorScheme personnalisé :
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) }
Composants Material3 disponibles
La bibliothèque media3-ui-compose-material3 fournit un ensemble de composables prédéfinis pour les commandes de lecteur courantes. Voici quelques-uns des composants que vous pouvez utiliser directement dans votre application :
| Component | Description |
|---|---|
PlayPauseButton |
Bouton permettant de passer de la lecture à la pause et inversement. |
SeekBackButton |
Bouton permettant de revenir en arrière d'un incrément défini. |
SeekForwardButton |
Bouton permettant d'avancer d'un incrément défini. |
NextButton |
Bouton permettant de passer à l'élément multimédia suivant. |
PreviousButton |
Bouton permettant d'accéder à l'élément multimédia précédent. |
RepeatButton |
Bouton permettant de parcourir les modes Répétition. |
ShuffleButton |
Bouton permettant d'activer ou de désactiver le mode aléatoire. |
MuteButton |
Un bouton pour couper et réactiver le son du lecteur. |
PositionAndDurationText |
Composable de texte qui affiche la position actuelle et la durée totale. |
PositionText |
Composable de texte qui affiche la position actuelle. |
DurationText |
Composable de texte qui affiche la durée totale. |
RemainingDurationText |
Un composable de texte qui affiche la durée restante. |
Cette liste n'est pas exhaustive. Consultez la documentation de référence de l'API de la bibliothèque pour connaître tous les composants disponibles.
Deux autres Composables prédéfinis dont vous aurez probablement besoin sont liés à la gestion de la surface et se trouvent dans le module media3-ui-compose, car ils ne possèdent pas de thème Material.
| Component | Description |
|---|---|
ContentFrame |
Surface permettant d'afficher du contenu multimédia, qui gère le format, le redimensionnement et un obturateur |
PlayerSurface |
Surface brute qui encapsule SurfaceView et TextureView dans AndroidView |