为什么 R.color.myColor return 颜色错误而 getColor() return 正确?

Why does R.color.myColor return wrong color and getColor() return correct?

我注意到当我使用 R.color.myColor 时,我得到了错误的颜色。但是,与此同时,使用 getColor(R.color.myColor) 给出了正确的颜色。例如,我的应用程序中有一个 #3971e3 颜色,它在使用 R.color.myColor 时呈现紫色,但在使用 getColor(R.color.myColor)Color.parseColor("#3971e3"); 时呈现紫色。

为什么会这样?

提前致谢

R.color.myColor 不是实际的颜色代码。它是一个资源 ID,可用于通过 getColor 查找颜色代码。这样做的原因是资源的实际颜色可以根据主题、区域设置或其他许多选项进行更改(如果您愿意的话)。因此,如果您需要实际颜色代码,请调用 getColor.