我担心这是一个重复的问题,但我已经阅读了这三个问题,我仍然不知道:
在colors .xml中设置背景色会引发无效操作
如何定义可变资源,如colors
颜色资源ID返回错误值
我正在为列表视图创建一个选择器,并将项目视图的背景设置为此选择器。我希望选择器引用我在资源文件中定义的颜色,但我无法识别颜色。
colors资源文件:
// colors.xml .. path=Resourcescolorcolours.xml
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<color name="background_default">#FFFFFFFF</color>
<color name="background_highlighted">#FFE9E9E9</color>
<color name="list_separator">#FFE6E6E6</color>
<color name="highlight">#FF00AEEE</color>
<color name="font_dark">#FF333333</color>
<color name="font_light">#FF808080</color>
</resources>
选择器:
// selector.xml .. path=Resourcesdrawableselector.xml
<?xml version="1.0" encoding="UTF-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="false"
android:state_selected="false"
android:drawable="@color/background_default" />
<item
android:state_pressed="false"
android:state_selected="true"
android:drawable="@color/background_highlighted" />
<item
android:state_pressed="true"
android:drawable="@color/highlight" />
</selector>
在项目视图中,我使用如下:
android:background="@drawable/selector"
我得到3个错误,说没有找到与给定名称匹配的资源(在'color'与值'@color/background_default')。对于在selector.xml中引用的每种颜色,我已经将color .xml设置为android资源,并且现在我已经清理/重置了几次解决方案。肯定是我遗漏了什么或者做错了什么。谢谢你的帮助。
尝试将颜色移动到路径Resourcesvalues colors .xml