O design Material You foi lançado com o lançamento do Android 12 e expandido com o Android 13.
Esta página se concentra nas atualizações da lógica do Material You para ajudá-lo a integrar-se com um suporte de cores dinâmicas mais rico.
Paletas de tons de cores dinâmicas
A partir do Android 12, as seguintes paletas dinâmicas de tons de cores são compatíveis:
Cada um deles é composto por um conjunto de 13 cores com vários valores de luminância definidos conforme descrito em R.color
, mas com valores de matiz e croma indefinidos que podem ser gerados dinamicamente pelo sistema Android em tempo de execução.
Estilos de tema para cores dinâmicas
A partir do Android 13, seis estilos de tema diferentes são suportados com variações no algoritmo de cores dinâmico que atendem às necessidades do desenvolvedor e às expectativas de contraste. Eles estão listados para gerar as 65 cores dinâmicas usadas pelos aplicativos:
-
TONAL_SPOT
é uma paleta de vibração média que usa uma corsystem_accent3_0
análoga à corsystem_accent1_0
(transferida da versão do Android 12 e ligeiramente ajustada). -
VIBRANT
é uma paleta de alta vibração que combina harmoniosamente mudanças sutis entre as cores. -
EXPRESSIVE
é uma paleta de alta vibração que combina cores de destaque inesperadas e únicas. -
SPRITZ
é uma paleta de baixa vibração que cria uma lavagem suave entre as cores. -
RAINBOW
usa detalhes cromáticos e superfícies neutras para criar uma experiência de cores mais sutil para os usuários.- NÃO É RECOMENDADO usá-lo com extração de cores baseada em papel de parede e, em vez disso, deve ser usado com temas de cores estáticas.
-
FRUIT_SALAD
fornece dois tons para dar mais expressão aos usuários.- NÃO É RECOMENDADO usá-lo com extração de cores baseada em papel de parede e, em vez disso, deve ser usado com temas de cores estáticas.
O tema do sistema é orientado pela mesma configuração do Android 12, que é Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES
. Para Android 13, requer apenas uma chave em seu JSON que envia a cor de origem para gerar as 65 paletas de cores:
{
"android.theme.customization.system_palette":"746BC1"
}
O estilo de tema padrão é TONAL_SPOT
, mas você pode opcionalmente especificar um dos outros estilos de tema com uma chave adicional com o JSON acima:
{
"android.theme.customization.system_palette":"746BC1"
"android.theme.customization.theme_style":"EXPRESSIVE"
}
Integrando cores dinâmicas
Para obter diretrizes sobre a integração de cores dinâmicas, consulte Integração de materiais projetados .
Perguntas frequentes (FAQ)
O que inclui a API da paleta de tons dinâmica?
Existem cinco paletas de tons:
Cada paleta tonal possui 13 valores de cores terminando nos índices 0, 10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 e 1000.
A API resultante é uma combinação do nome da paleta tonal, terminando no índice. Por exemplo:
R.color#system_accent1_10
Como é gerada uma paleta tonal dinâmica?
Uma paleta de tons dinâmica deve ser gerada a partir de uma única cor de origem que deve ser derivada do papel de parede usando com.android.systemui.monet.ColorScheme#getSeedColors
, que fornece diversas cores de origem válidas. Se nenhuma das cores fornecidas atender aos requisitos de cor de origem, a única cor de origem deverá usar o valor 0xFF1B6EF3
.