首页 > android使用?引用颜色资源,程序闪退?

android使用?引用颜色资源,程序闪退?

文件white_background_selector.xml中定义selector,使用问号引用了主题中的颜色资源

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="?attr/background_press_color">
    </item>

    <item android:state_pressed="false" android:drawable="?attr/background_color">
    </item>
</selector>

background_color以及background_press_color都在attrs.xml中定义了

<attr name="background_color" format="reference|color" />
<attr name="background_press_color" format="reference|color" />

然后也在styles.xml中定义了主题

<style name="DaylightThemeForCustomTitle" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="background_color">#ffffff</item>
        <item name="background_press_color">#eeeeee</item>
</style>

闪退堆栈如下:

10-22 10:45:51.896 E/CrashHandler File res/drawable/white_background_selector.xml from drawable resource ID #0x7f020191
android.content.res.Resources$NotFoundException: File res/drawable/white_background_selector.xml from drawable resource ID #0x7f020191

at android.content.res.Resources.loadDrawableForCookie(Resources.java:2570)
at android.content.res.Resources.loadDrawable(Resources.java:2472)
at android.content.res.Resources.getDrawable(Resources.java:794)
at android.content.res.Resources.getDrawable(Resources.java:770)
at android.content.Context.getDrawable(Context.java:402)
at android.view.View.setBackgroundResource(View.java:16106)
at com.first.test.adapters.MyAdapter.getSmallImageView(MyAdapter.java:518)
at com.first.test.adapters.MyAdapter.getView(MyAdapter.java:276)
at android.widget.HeaderViewListAdapter.getView(HeaderViewListAdapter.java:220)
at android.widget.AbsListView.obtainView(AbsListView.java:2346)
at android.widget.ListView.makeAndAddView(ListView.java:1864)
at android.widget.ListView.fillSpecific(ListView.java:1344)
at android.widget.ListView.layoutChildren(ListView.java:1663)
at android.widget.AbsListView.onLayout(AbsListView.java:2150)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:573)
at android.widget.FrameLayout.onLayout(FrameLayout.java:508)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1627)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1076)
at android.view.View.layout(View.java:15596)
at android.view.ViewGroup.layout(ViewGroup.java:4966)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:573)
at android.widget.FrameLayout.onLayout(FrameLayout.java:508)
at android.view.View.layout(View.java:15596)

为什么使用white_background_selector时程序会出现闪退呢?


怎么解决的,我也遇到这个问题


white_background_selector.xml
这个没找到啊

【热门文章】
【热门文章】