首页 > 解决方案 > 从 Android 上的 night 文件夹中获取颜色

问题描述

我有两个文件夹

值夜-> colors.xml

<color name="iconColor">#ffffff</color>

值 -> 颜色.xml

<color name="iconColor">#000000</color>

当我想阅读“iconColor”时

通常带有代码

ContextCompat.getColor(this,R.color.iconColor)

如果启用了夜间模式,它会从 values-night 文件夹中读取

如果未启用夜间模式,则从值文件夹中读取

现在我想values-night在任何情况下阅读该文件夹

标签: javaandroidxml

解决方案


为“夜间”模式创建一个专用颜色,在-night文件夹中使用它,然后根据需要直接引用它:

values/colors.xml

<color name="iconColor">#000000</color>
<color name="nightModeColor">#FFFFFF</color>

values-night/colors.xml

<color name="iconColor">@color/nightModeColor</color>

然后,在代码中,在“任何情况”下使用“夜间模式颜色”:

ContextCompat.getColor(this, R.color.nightModeColor)

希望有帮助!


推荐阅读