首页 > 解决方案 > Jetpack Compose Icon 的颜色在真机切换

问题描述

两种设备都处于暗模式,由于某种原因,我的真实设备中的图标在暗模式下是黑色的,在亮模式下是全白的。

如果我将颜色设置为白色,它们在暗模式下保持黑色,如果我将颜色设置为黑色,它们在亮模式下保持白色。

只有当我将颜色设置为纯白色或黑色以外的其他颜色(例如:红色)时,颜色才会应用于图标。

这是真正的设备

这是模拟器 这是模拟器

这是真机(小米9T Pro)

编辑1:

它在模拟器上按预期工作,但在真实设备上却没有

执行

BottomNavigationItem(
        icon = {
            Icon(
                painter = painterResource(
                    id = screen.icon
                ),
                contentDescription = screen.title,
            )
        },
        selectedContentColor = Color.White,
        unselectedContentColor = Color.White.copy(alpha = .3f)
        ...
    )

上述代码的结果在模拟器中将深色模式下的图标颜色设置为白色,浅色模式下设置为黑色,但在真实设备中它是相反的,因此深色模式下为黑色,浅色模式下为白色。

标签: iconsandroid-jetpack-compose

解决方案


推荐阅读