我想在选择器中使用Stlyle中定义的颜色,但它导致Resources $ NotFoundException。选择器资源可以使用样式中定义的颜色吗?
首先,我增加了一个新的属性attr.xml:
<resources>
<attr name="unread_background" format="color" />
</resources>
然后我在styles.xml定义attr属性值:
<style name="ThemeNoTitleBar" parent="android:Theme.NoTitleBar">
<item name="unread_background">#000000</item>
</style>
然后我试图使用attr属性在我的选择定义:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- other states snipped -->
<item android:state_selected="false"
android:drawable="?unread_background" />
</selector>
最后,该活动在清单中使用ThemeNoTitleBar样式主题。
我也尝试在colors.xml中创建一个颜色,并让它使用新的attr,但也失败了。
我明显错过了一些东西,但我不知道该怎么做才能解决它。我的意图是创建多个主题,并让选择器使用当前选定主题中的颜色。
如果我更换unread_background用硬编码的颜色值,然后正常工作,所以我不认为其他答案适用于这里。 – toddler 2010-09-21 14:53:40
您是否为您的问题找到答案?我也有同样的问题。 – 2011-09-23 14:05:21