Material3 Compose

La biblioteca media3-ui-compose-material3 controla internamente la administración del estado y el diseño de Material 3. Para obtener más información sobre qué biblioteca usar, consulta la descripción general de Media3 Compose.

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

Personaliza los componentes de Material 3

Si bien media3-ui-compose-material3 proporciona componentes que siguen el diseño de Material 3, aún tienes control total sobre la aplicación de temas. Puedes personalizar los colores, la tipografía y las formas envolviendo la IU del reproductor en un MaterialTheme.

Por ejemplo, para cambiar el color de PlayPauseButton, puedes proporcionar un colorScheme personalizado:

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

Componentes de Material3 disponibles

La biblioteca de media3-ui-compose-material3 proporciona un conjunto de elementos componibles prediseñados para los controles del reproductor comunes. Estos son algunos de los componentes que puedes usar directamente en tu app:

Componente Descripción
PlayPauseButton Un botón que alterna entre reproducir y pausar.
SeekBackButton Un botón para retroceder en un incremento definido.
SeekForwardButton Botón para avanzar una cantidad definida.
NextButton Botón para buscar el siguiente elemento multimedia.
PreviousButton Un botón para buscar el elemento multimedia anterior.
RepeatButton Botón para cambiar entre los modos de repetición.
ShuffleButton Un botón para activar o desactivar el modo aleatorio
MuteButton Un botón para silenciar y activar el sonido del reproductor
PositionAndDurationText Es un elemento componible de texto que muestra la posición actual y la duración total.
PositionText Un elemento componible de texto que muestra la posición actual.
DurationText Es un elemento componible de texto que muestra la duración total.
RemainingDurationText Un elemento componible de texto que muestra la duración restante.

Esta no es una lista exhaustiva. Consulta la referencia de la API de la biblioteca para ver todos los componentes disponibles.

Otros dos elementos media3-ui-compose precompilados que probablemente necesites están relacionados con la administración de superficies y se encuentran en el módulo media3-ui-compose porque no poseen temas de Material.

Componente Descripción
ContentFrame Una superficie para mostrar contenido multimedia que controla la administración de la relación de aspecto, el cambio de tamaño y un obturador
PlayerSurface Superficie sin procesar que une SurfaceView y TextureView en AndroidView