Material3 Compose

Biblioteka media3-ui-compose-material3 wewnętrznie obsługuje zarówno zarządzanie stanem, jak i style Material 3. Więcej informacji o tym, której biblioteki używać, znajdziesz w omówieniu Media3 Compose.

// The library provides styled UI components
Row {
  SeekBackButton(player)
  PlayPauseButton(player)
  SeekForwardButton(player)
}

Dostosowywanie komponentów Material3

media3-ui-compose-material3 udostępnia komponenty zgodne z zasadami Material3 Design, ale nadal masz pełną kontrolę nad motywami. Możesz dostosować kolory, typografię i kształty, umieszczając interfejs odtwarzacza w tagu MaterialTheme.

Aby na przykład zmienić kolor elementu PlayPauseButton, możesz podać niestandardowy element colorScheme:

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)
}

Dostępne komponenty Material 3

media3-ui-compose-material3 biblioteka zawiera zestaw gotowych komponentów kompozycyjnych do typowych elementów sterujących odtwarzaczem. Oto niektóre komponenty, których możesz używać bezpośrednio w aplikacji:

Komponent Opis
PlayPauseButton Przycisk, który przełącza między odtwarzaniem a wstrzymaniem.
SeekBackButton Przycisk przewijania do tyłu o określony przyrost.
SeekForwardButton Przycisk przewijania do przodu o określony przyrost.
NextButton Przycisk przewijania do następnego elementu multimedialnego.
PreviousButton Przycisk przewijania do poprzedniego elementu multimedialnego.
RepeatButton Przycisk przełączania trybów powtarzania.
ShuffleButton Przycisk do włączania i wyłączania trybu losowego.
MuteButton Przycisk wyciszania i wyłączania wyciszenia odtwarzacza.
PositionAndDurationText Komponent tekstowy, który wyświetla bieżącą pozycję i całkowity czas trwania.
PositionText Kompozycja tekstowa, która wyświetla bieżącą pozycję.
DurationText Kompozycja tekstowa, która wyświetla łączny czas trwania.
RemainingDurationText Komponent tekstowy, który wyświetla pozostały czas trwania.

Ta lista nie jest wyczerpująca. Wszystkie dostępne komponenty znajdziesz w dokumentacji interfejsu API biblioteki.

Dwa inne gotowe komponenty, które prawdopodobnie będą Ci potrzebne, są związane z zarządzaniem powierzchnią i znajdują się w module media3-ui-compose, ponieważ nie mają motywu Material.

Komponent Opis
ContentFrame Powierzchnia do wyświetlania treści multimedialnych, która zarządza współczynnikiem proporcji, zmianą rozmiaru i migawką.
PlayerSurface Surowa powierzchnia, która otacza SurfaceView i TextureView w AndroidView