找不到@ drawable / dark_header_dither的资源

时间:2014-12-18 18:43:49

标签: android android-layout android-xml android-theme android-styles

我试图在“设置”屏幕中设置PreferenceCategory元素的样式。使用下面的代码,我可以更改文本颜色,但是我丢失了深灰色分隔线。我查看了Widget.TextView.ListSeparator的源代码,发现它使用了drawable作为背景。如果我尝试应用相同的drawable,我会收到错误说"找不到与给定名称匹配的资源... @ drawable / dark_header_dither"

如何使用分隔线?

<style name="Widget.TextView.ListSeparator" parent="@android:style/Widget.TextView">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textSize">14sp</item>
    <item name="android:gravity">center_vertical</item>
</style>

<style name="PreferenceListHeader" parent="Widget.TextView.ListSeparator">
    <item name="android:background">@drawable/dark_header_dither</item> <!--Problem! -->
    <item name="android:textColor">#0288d1</item>

1 个答案:

答案 0 :(得分:1)

此错误是由于您在drawable资源文件夹中没有dark_header_dither文件的原因。 &#34; @可绘制/文件&#34;在资源中的drawable文件夹中搜索文件,但它无法在那里找到它。您可以在drawable文件夹中添加自己的抖动图像,并通过&#34; @ drawable / your_dithered_image_name&#34;

引用它

希望这会有所帮助......

修改

我不知道为什么我无法引用此文件,但解决方法是添加与dark_header_dither.xml文件相同内容的xml文件。

在跟踪这个可绘制文件后,我得到了它的内容:

  <nine-patch xmlns:android="http://schemas.android.com/apk/res/android"
     android:src="@android:drawable/dark_header"
     android:dither="true"
  />

在drawable资源文件夹中使用名称&#34; dark_header_dither.xml&#34;创建一个文件。并添加以上内容。

现在,您可以毫无困难地参考它....