如何将 androidx.compose.ui.graphics.Color 转换为 android.graphics.Color (int)

时间:2021-04-16 07:26:13

标签: android android-jetpack-compose

如何将 Compose Color 转换为 Android Color Int?

我暂时使用此代码,它似乎有效,我似乎找不到获取颜色的 Int 值的函数

Color.rgb(color.red.toInt(), color.green.toInt(), color.blue.toInt())

其中 Color.rgb 是一个返回整数颜色的函数 android.graphics.Color,而颜色变量只是一个 Compose Color !

由于浮动需要更高的API

链接:How to convert android.graphics.Color to androidx.compose.ui.graphics.Color

1 个答案:

答案 0 :(得分:2)

您可以使用 toArgb() 方法

<块引用>

将此颜色转换为 ARGB 颜色 int。颜色 int 总是在 sRGB色彩空间

类似于:

//Compose Color androidx.compose.ui.graphics
val Teal200 = Color(0xFFBB86FC)

//android.graphics.Color
val color = android.graphics.Color.argb(
    Teal200.toArgb().alpha,
    Teal200.toArgb().red,
    Teal200.toArgb().green,
    Teal200.toArgb().blue
    )