Die Bibliothek media3-ui-compose-material3 übernimmt sowohl die Statusverwaltung als auch das Material3-Styling intern. Weitere Informationen dazu, welche Bibliothek verwendet werden sollte, finden Sie in der Media3 Compose-Übersicht.
// 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 Benutzeroberfläche des Players 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 vordefinierter Composables für gängige Player-Steuerelemente. Hier sind einige Komponenten, die Sie direkt in Ihrer App verwenden können:
| Komponente | Beschreibung |
|---|---|
PlayPauseButton |
Eine Schaltfläche, mit der zwischen Wiedergabe und Pause umgeschaltet wird. |
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 Medienelement. |
RepeatButton |
Eine Schaltfläche zum Durchlaufen der Wiederholungsmodi. |
ShuffleButton |
Eine Schaltfläche zum Aktivieren und Deaktivieren des Zufallsmodus. |
MuteButton |
Eine Schaltfläche 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 |
Ein Text-Composable, das die Gesamtdauer anzeigt. |
RemainingDurationText |
Eine Text-Composable, die die verbleibende Dauer anzeigt. |
ProgressSlider |
Ein Schieberegler, der den Wiedergabefortschritt anzeigt und mit dem der Nutzer vor- und 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 |