Die Bibliothek media3-ui-compose-material3 übernimmt intern sowohl die Zustandsverwaltung als auch das Material3-Styling. Weitere Informationen dazu, welche Bibliothek verwendet werden sollte, finden Sie in der Übersicht zu Media3 Compose.
// The library provides styled UI components Row { SeekBackButton(player) PlayPauseButton(player) SeekForwardButton(player) }
// You can rearrange the composables into a layout that suits your needs @Composable fun PlayerProgressControlsLeftAligned(player: Player) { Row { PositionAndDurationText(player) ProgressSlider(player) } } @Composable fun PlayerProgressControlsCenterAligned(player: Player) { Row { PositionText(player) ProgressSlider(player) DurationText(player) } }
Material3-Komponenten anpassen
media3-ui-compose-material3 bietet zwar Komponenten, die dem Material3-Design folgen, Sie haben aber weiterhin die volle Kontrolle über das Theming. Sie können Farben, Typografie und Formen anpassen, indem Sie die Player-Benutzeroberfläche in ein MaterialTheme einfügen.
Wenn Sie beispielsweise die Farbe des PlayPauseButton ändern möchten, können Sie einen benutzerdefinierten colorScheme angeben:
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) }
Verfügbare Material3-Komponenten
Die media3-ui-compose-material3-Bibliothek bietet eine Reihe von vorgefertigten Composables für gängige Player-Steuerelemente. Hier sind einige Komponenten, die Sie direkt in Ihrer App verwenden können:
| Komponente | Beschreibung |
|---|---|
PlayPauseButton |
Ein Button zum Wechseln zwischen Wiedergabe und Pause. |
SeekBackButton |
Eine Schaltfläche zum Zurückspulen um ein definiertes Intervall. |
SeekForwardButton |
Eine Schaltfläche zum Vorspulen um einen bestimmten Wert. |
NextButton |
Eine Schaltfläche zum Springen zum nächsten Media-Element. |
PreviousButton |
Eine Schaltfläche zum Springen zum vorherigen Media-Element. |
RepeatButton |
Eine Schaltfläche zum Durchlaufen der Wiederholungsmodi. |
ShuffleButton |
Eine Schaltfläche zum Aktivieren und Deaktivieren des Zufallsmodus. |
MuteButton |
Ein Button zum Stummschalten und Aufheben der Stummschaltung des Players. |
PositionAndDurationText |
Eine Text-Composable, die die aktuelle Position und die Gesamtdauer anzeigt. |
PositionText |
Eine Text-Composable, die die aktuelle Position anzeigt. |
DurationText |
Eine Text-Composable, die die Gesamtdauer anzeigt. |
RemainingDurationText |
Ein Text-Composable, das die verbleibende Dauer anzeigt. |
ProgressSlider |
Ein Schieberegler, der den Wiedergabefortschritt anzeigt und mit dem der Nutzer die Wiedergabe vor- oder zurückspulen kann. |
Diese Liste ist nicht vollständig. Alle verfügbaren Komponenten finden Sie in der API-Referenz der Bibliothek.
Zwei weitere vorgefertigte Composables, die Sie wahrscheinlich benötigen, beziehen sich auf die Oberflächenverwaltung und befinden sich im Modul media3-ui-compose, da sie kein Material-Theming haben.
| Komponente | Beschreibung |
|---|---|
ContentFrame |
Eine Oberfläche zur Darstellung von Medieninhalten, die sich um die Verwaltung des Seitenverhältnisses, die Größenanpassung und einen Verschluss kümmert |
PlayerSurface |
Rohoberfläche, die SurfaceView und TextureView in AndroidView umschließt |