【发布时间】:2013-12-23 09:40:30
【问题描述】:
我有一个定义颜色的资源文件:
colors.xml:
...
<color name="White">#FFFFFF</color>
<color name="Ivory">#FFFFF0</color>
<color name="LightYellow">#FFFFE0</color>
<color name="Yellow">#FFFF00</color>
<color name="Snow">#FFFAFA</color>
<color name="FloralWhite">#FFFAF0</color>
<color name="LemonChiffon">#FFFACD</color>
<color name="Cornsilk">#FFF8DC</color>
<color name="Seashell">#FFF5EE</color>
<color name="LavenderBlush">#FFF0F5</color>
<color name="PapayaWhip">#FFEFD5</color>
...
我想用该列表中的颜色 value 初始化类中的 int 字段(不是颜色 ID,颜色值)
class MyClass {
private int color1 = ?????;
private int color2 = ?????;
...
可行吗?
我试过Resources.getSystem().getColor(R.color.White);,但我得到了:
12-23 11:22:36.016:E/AndroidRuntime(14646):原因:android.content.res.Resources$NotFoundException:资源 ID #0x7f0b0016
【问题讨论】:
-
你在哪里存储 color.xml 文件?
-
使用当前应用程序或组件上下文调用
getResources().getColor(R.color.White);