LayerList和LevelList drawables的 XML 资源规范的文档说该item
元素只接受bitmap
作为子元素。在有关级别列表的一些答案中,我看到人们正在将shape
标签作为子标签添加到item
标签中。我尝试了以下方法,它似乎工作得很好。
<?xml version="1.0" encoding="utf-8"?>
<level-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:maxLevel="0">
<shape android:shape="rectangle">
<solid android:color="#ff0000" />
</shape>
</item>
<item android:maxLevel="1">
<shape android:shape="oval">
<solid android:color="#0000ff" />
</shape>
</item>
</level-list>
这是我的问题。这是否记录在任何地方,或者我应该避免这种结构,因为它不受所有 API 版本的支持,或者文档只是不完整并且上面是完全合法的?
澄清一下,我知道我可以通过使用单独的资源文件并使用android:drawable
属性引用它们来指定任何类型的可绘制对象。该问题是指层列表或级别列表的 XML 中任意可绘制对象的内联规范。