如何在android中使用带有linearGradient的SVG图标

时间:2017-12-28 20:30:56

标签: android svg

我的设计师给了我一些SVG形式的图标。我正在尝试将它们添加到我的应用程序中。

我注意到svgs中有<lineargradient>个标签。

我通过AndroidStudio导入了这些svgs - &gt;档案 - &gt;新 - &gt;矢量资产

一旦我用这些svgs启动我的应用程序。

任何包含使用这些SVG的ImageView的屏幕都会立即崩溃我的应用程序。在API-23上

我这里有一个示例应用

https://github.com/liuzhen2008/whydoesntthiswork

令我困惑的是,我可以在构建生成的文件夹中看到,创建了许多不同大小的PNG。

为什么我的应用会崩溃?我认为他们只是使用这些生成的PNG。

我有哪些替代品? Android studio中是否还有其他工具可以让我快速将这些svgs转换为PNG并直接使用它们?

1 个答案:

答案 0 :(得分:0)

根据我的建议尝试使用app:srcCompat =&#34; @ drawable / ic_baloons&#34;而不是android:src =&#34; @ drawable / ic_baloons&#34;。

这是你的代码:

<ImageView

    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_baloons" />

代码中的更改:

<ImageView

    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:srcCompat="@drawable/ic_baloons"  />