Jetpack Compose(Android 或多平台)中是否有等效的 ColorScheme.fromSeed?

问题描述 投票:0回答:1

标题:
Jetpack Compose(Android 或多平台)中是否有

ColorScheme.fromSeed
等效项?

身体:
我正在 Android(或 Compose Multiplatform)上使用 Jetpack Compose,想知道是否有类似于 Flutter 的功能

ColorScheme.fromSeed
,我可以在其中生成全面的配色方案(主要、次要、背景、错误等)基于单一种子颜色。

在 Flutter 中,

ColorScheme.fromSeed
采用种子颜色并为浅色和深色主题生成一组有凝聚力的颜色,确保整个方案的色调一致,符合材料设计指南。

Jetpack Compose 是否具有类似的内置函数来从种子颜色生成配色方案?或者,是否有一个库可以提供此类功能?如果没有,在 Compose 中创建类似的基于种子的配色方案的推荐方法是什么?

android android-jetpack-compose compose-multiplatform
1个回答
0
投票

我发现了一个名为 MaterialKolor 的库,它为 Jetpack Compose 提供了与 Flutter 的

ColorScheme.fromSeed
类似的功能。 MaterialKolor 基于单一种子颜色生成 Material Design 配色方案,创建主要颜色、次要颜色、背景颜色和其他颜色,同时确保良好的对比度和视觉和谐。

MaterialKolor 使用 Material Design 的颜色算法来导出色调和色调,使您可以轻松创建适应浅色和深色主题的一致的配色方案。以下是库文档中有关如何使用它的快速示例:

@Composable
fun MyTheme(
    seedColor: Color,
    useDarkTheme: Boolean = isSystemInDarkTheme(),
    content: @Composable () -> Unit
) {
    val colorScheme = rememberDynamicColorScheme(seedColor, useDarkTheme)

    MaterialTheme(
        colors = colorScheme.toMaterialColors(),
        content = content
    )
}
© www.soinside.com 2019 - 2024. All rights reserved.