Color dinámico

El diseño de Material You se lanzó con la versión de Android 12 y se expandió con Android 13.

En esta página, se explican las actualizaciones de la lógica de Material You para ayudarte a integrar una mejor compatibilidad con el color dinámico.

Paletas tonales de color dinámico

A partir de Android 12, se admiten las siguientes paletas de tonos de color dinámico:

Cada uno de ellos consta de un conjunto de 13 colores con varios valores de luminancia definidos, como se describe en R.color, pero con valores de tono y croma indefinidos que el sistema Android puede generar de forma dinámica en el tiempo de ejecución.

Estilos de temas para el color dinámico

A partir de Android 13, se admiten seis estilos de temas diferentes con variaciones en el algoritmo de color dinámico que satisfacen las necesidades de los desarrolladores y las expectativas de contraste. A continuación, se indican los valores que se usan para generar los 65 colores dinámicos que usan las apps:

  • TONAL_SPOT es una paleta de vibración media que usa un color system_accent3_0 análogo al color system_accent1_0 (se transfirió de la versión de Android 12 y se ajustó ligeramente).
  • VIBRANT es una paleta de alta intensidad que combina de forma armoniosa cambios sutiles entre los colores.
  • EXPRESSIVE es una paleta de alta intensidad que combina colores de acento inesperados y únicos.
  • SPRITZ es una paleta de baja intensidad que crea un lavado suave entre los colores.
  • RAINBOW usa acentos cromáticos y superficies neutras para crear una experiencia de color más sutil para los usuarios.
    • NO SE RECOMIENDA usar este método con la extracción de color basada en el fondo de pantalla, sino que se debe usar con temas de color estáticos.
  • FRUIT_SALAD proporciona colores de dos tonos para brindarles más expresión a los usuarios.
    • NO SE RECOMIENDA usar este método con la extracción de color basada en el fondo de pantalla, sino que se debe usar con temas de color estáticos.

El tema del sistema se basa en el mismo parámetro de configuración que en Android 12, que es Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES. En Android 13, solo se requiere una clave en su JSON que envíe el color de origen para generar las 65 paletas de colores:

{
    "android.theme.customization.system_palette":"746BC1"
}

El estilo de tema predeterminado es TONAL_SPOT, pero, de manera opcional, puedes especificar uno de los otros estilos de tema con una clave adicional en el JSON anterior:

{
    "android.theme.customization.system_palette":"746BC1"
    "android.theme.customization.theme_style":"EXPRESSIVE"
}

Cómo integrar el color dinámico

Para obtener instrucciones sobre cómo integrar el color dinámico, consulta Integración del diseño de Material You.

Preguntas frecuentes

¿Qué incluye la API de paleta de tonos dinámica?

¿Cómo se genera una paleta tonal dinámica?

Se debe generar una paleta tonal dinámica a partir de un solo color fuente que se debe derivar del fondo de pantalla con com.android.systemui.monet.ColorScheme#getSeedColors, que proporciona varios colores fuente válidos. Si ninguno de los colores proporcionados cumple con el requisito de color de origen, el color de origen único debe usar el valor 0xFF1B6EF3.