如何识别可绘制的 xml 文件?
Posted
技术标签:
【中文标题】如何识别可绘制的 xml 文件?【英文标题】:How Drawable xml files are identified ? 【发布时间】:2012-03-30 01:48:42 【问题描述】:当我将以下 xml 文件放入“drawable”文件夹时,drawable 会自动编译为“GradientDrawable”,我可以在布局中使用它
但在 xml 文件中,我没有指定它的数据类型“GradientDrawable”。
这个 xml 解析和“自动”类型检测发生在哪里?在编译期间还是在运行时?
如果我写了一个自定义的drawable,我可以用类似的方式将它的参数指定为xml标记吗?
我找到了Drawable.inflate 方法,但找不到使用示例
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:a="http://schemas.android.com/apk/res/android" >
<gradient
a:angle="270"
a:endColor="#992f2f"
a:startColor="#ef4444" />
<stroke
a:
a:color="#992f2f" />
<corners a:radius="6dp" />
<padding
a:bottom="6dp"
a:left="6dp"
a:right="6dp"
a:top="6dp" />
</shape>
【问题讨论】:
【参考方案1】:在 Java 中你应该使用 R.drawable.ExamplePicture 在 xml ="@drawable/ExamplePicture" 每个drawable-xx文件夹上的图片文件
【讨论】:
以上是关于如何识别可绘制的 xml 文件?的主要内容,如果未能解决你的问题,请参考以下文章
原因:org.xmlpull.v1.XmlPullParserException:二进制 XML 文件第 14 行:无效的可绘制标签渐变