0

我正在尝试为自定义样式的可绘制对象指定参考/资源 ID。

如果drawable是一个图像文件(即.png),一切都很好,但是如果drawable是一个xml布局文件(即一个选择器),那么我会得到编译时错误:

找不到与给定名称匹配的资源(在“net.monocross.app:button_drawable_id”,值为“@layout/XmlSelector”)..\Resources\values\styles.xml

我正在尝试确定这是否是 Android 规则,或者可能是 Monodroid 问题,以及是否有其他方法可以达到此目的?

谢谢。

样式.xml

<style name ="DropdownButtonA">
  <item name="android:layout_width">@dimen/button_width</item>
  <item name="android:layout_height">@dimen/button_height</item>
  <item name="net.monocross.app:button_label_text">hi</item>
  <item name="net.monocross.app:button_label_color">#99ABCDEF</item>

  <!-- OK --> 
  <item name="net.monocross.app:button_drawable_id">@drawable/PngImage</item>

  <!-- ERROR -->
  <item name="net.monocross.app:button_drawable_id">@drawable/XmlSelector</item>

</style>

attrs.xml

<declare-styleable name="DropdownButton">
  <attr name="button_label_text" format="string"></attr>
  <attr name="button_label_color" format="color"></attr>  
  <attr name="button_drawable_id" format="reference"></attr>
</declare-styleable>
4

1 回答 1

1

我需要重命名 xml-drawable 文件

XmlSelector.axml -> xml_selector.xml

如果这对您不起作用,请尝试保留 .axml 扩展名。

于 2013-09-04T13:51:10.817 回答