Android 在代码中使用颜色资源值

Posted

技术标签:

【中文标题】Android 在代码中使用颜色资源值【英文标题】:Android Using a Color Resource value in Code 【发布时间】:2012-02-09 15:24:10 【问题描述】:

我已经在我的资源 colors.xml 文件中设置了一种颜色。这适用于 TextViews 等

<color name="medsListItem">#980000</color>

我正在代码中构建一些 html/ 字符串,并希望使用与我的应用程序中相同的颜色并保持一切井井有条

我正在使用下面的代码从上面的资源中获取颜色

String colorToUse = (String) getResources().getString(R.color.medsListItem);

然而产生的字符串是#ff980000 android 在字符 2 和 3 处将 ff 添加到我的字符串中(或将 # 替换为字符串前面的 #ff)。我可以通过在代码中添加另一行来解决这个问题

colorToUse = "#" + colorToUse.substring(3, 9);

但我认为我遗漏了一些东西,因为它是 (a) 不优雅和 (b) 我不知道为什么要添加 ff (猜测它与 android 如何处理颜色有关值)

【问题讨论】:

【参考方案1】:

返回颜色为#AARRGGBB 格式,AA 为alpha 值。这在本文档的开头进行了描述:document link

【讨论】:

除了这个答案,这是正确的。你可能会发现这个***.com/questions/5248583/… 很有帮助。 Color 类可以帮助您解析基于字符串的十六进制颜色格式。

以上是关于Android 在代码中使用颜色资源值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 上更改默认 ProgressBar 圆圈颜色

android中如何获得drawable的颜色值?

在android中更改列表视图的文本颜色

wpf 控件四周扩散颜色

按钮更改颜色

Android5.0常用颜色属性说明