答案 0 :(得分:1)
您正在使用矢量兼容性版本来解析您的<vector>
并生成不同分辨率的.png
个文件。正如错误消息所示,此过程不支持对其他资源的引用(在您的情况下为@android:color/white
)。
改变这个:
android:fillColor="@android:color/white"
为:
android:fillColor="#fff"
答案 1 :(得分:1)
这是该工具的限制。
android:fillColor="@android:color/white"
适用于API 21,如果您在设备上运行应用,或设置Android Studio预览窗口的API级别&gt; = 21。
但它不支持我们的后向支持(XML - &gt; PNG)路径以支持API&lt; 21.
所以在你的情况下
更改
android:fillColor="@android:color/white"
要
android:fillColor="#ffffff"
答案 2 :(得分:0)
我曾遇到过同样的问题。在我的情况下,我没有必要将路径颜色更改为android:fillColor="#fff"
这是我的svg的xml
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="512dp"
android:height="512dp"
android:viewportWidth="42.0"
android:viewportHeight="42.0">
<path
android:pathData="M0,20h42v2h-42z"
android:fillColor="@android:color/white"/>
<path
android:pathData="M21,13c2.76,0 5,-2.24 5,-5s-2.24,-5 -5,-5s-5,2.24 -5,5S18.24,13 21,13zM21,5c1.65,0 3,1.35 3,3s-1.35,3 -3,3s-3,-1.35 -3,-3S19.35,5 21,5z"
android:fillColor="@android:color/white"/>
<path
android:pathData="M21,29c-2.76,0 -5,2.24 -5,5s2.24,5 5,5s5,-2.24 5,-5S23.76,29 21,29zM21,37c-1.65,0 -3,-1.35 -3,-3s1.35,-3 3,-3s3,1.35 3,3S22.65,37 21,37z"
android:fillColor="@android:color/white"/>
看,我没有改变颜色参考。虽然我的minSDK是14。我错误的是我没有将此行添加到应用程序级别的gradle文件
android{
....
vectorDrawables.useSupportLibrary = true
}
我不确定你是否犯了同样的错误。让我知道你的情况是否相同