Поверхность с +(...)% цветов в реактивном ранце

В официальных ресурсах Material Design 3 (например, набор для дизайна Figma) было много ссылок на цвета, называемые «Surface at +x». Эти цвета представляют собой цвет поверхности, смешанный с x% основного цвета.

Теперь мой вопрос:

Как вы можете реализовать цвета «Поверхность на +x» в Jetpack Compose? Документов и имущества на участке нет. MaterialTheme.colorScheme объект.

Ссылка на Figma Design Kit:

3 ответа

Обновление за сентябрь 2022 г.

С Материалом 3, если по какой-то причине вам нужна поверхность Elevate Color , но вы не можете использоватьSurface, теперь вы можете использовать напрямую:

      MaterialTheme.colorScheme.surfaceColorAtElevation(4.dp)

Если кому-то нужно получить его в коде без компоновки, используйте перечисления SurfaceColors :

      int colorSurface1 = SurfaceColors.SURFACE_2.getColor(context);

Документацию можно найти здесь

Использование поверхности MaterialTheme.colorScheme.surfaceпо умолчанию у них также есть новый tonalElevationсобственность, о которой вы можете прочитать здесь .

Суть в том, что увеличение высоты тона изменяет цвет автоматически, попробуйте сами:

      Surface(tonalElevation = 5.dp) {
    // content
}
Другие вопросы по тегам