小米 9T Pro 不像模拟器 jetpack-compose 那样显示文本颜色

Xiaomi MI 9T Pro not displaying text colors like emulator jetpack-compose

问题

我正在尝试制作两种颜色的动画,这取决于某些属性,现在代码已完成并且可以在我的模拟器上运行,但不能在我的 Mi 9T Pro 上运行,我还没有在任何其他设备上进行过测试,但我会在它运行后进行测试可能,如果行为相同,我会通知您。

预期行为:

带有彩色动画的简单组合,UI 会相应地对变化做出反应

实际行为(模拟器 Pixel2 API 30)

颜色按预期进行动画处理,并按预期更改为正确的颜色

实际行为(小米9T Pro)

颜色是动态的但有些融合,硬色显示更准确,但柔和的颜色则不然。

模拟器主题颜色正确

模拟器硬色正确

)

小米9T Pro主题色)错误

小米9T Pro硬色

动画属性

val animContentColor = animateColorAsState(
    targetValue = when {
        locallySelected -> onPrimaryColor()
        else -> onSurfaceColor()
    },
    animationSpec = colorAnimSpec
)

val animBackgroundColor = animateColorAsState(
    targetValue = when {
        locallySelected -> primaryColor()
        selected -> surface5Color()
        else -> surface1Color()
    },
    animationSpec = colorAnimSpec
)

可组合

ElevatedCard(
    modifier = Modifier
        .fillMaxWidth(),
    contentColor = animContentColor.value,
    shape = RoundedCornerShape(4.dp),
) {
    Row(
        modifier = Modifier
            .fillMaxWidth()
            .height(48.dp)
            .background(color = animBackgroundColor.value)
            .clickable(onClick = onClick),
        verticalAlignment = Alignment.CenterVertically
    ) {

        AnimatedVisibility(
            visible = selected,
        ) {
            Icon(
                imageVector = Icons.Rounded.Check,
                contentDescription = null,
                modifier = Modifier
                    .padding(start = 16.dp)
            )
        }

        Text(
            text = theater.name,
            style = TypographyMaterial3.bodyMedium,
            modifier = Modifier
                .weight(1f)
                .padding(start = 16.dp)
        )

        Text(
            text = "15km",
            style = TypographyMaterial3.labelSmall,
            modifier = Modifier
                .padding(horizontal = 16.dp)
        )

    }
}

问题

这是否可能是设备问题?

编辑 我已经在华为 Phone 上对其进行了测试并按预期工作,所以我相信这可能是小米 device/style

的问题

解决方案

这可能是“Material 你”——无论小米 9T Pro 的 API 级别如何。

例如。 https://www.youtube.com/watch?v=jrfuHyMlehc