Android中SVG和VectorDrawable的区别

【Android中SVG和VectorDrawable的区别】五陵年少金市东,银鞍白马渡春风。这篇文章主要讲述Android中SVG和VectorDrawable的区别相关的知识,希望能为你提供帮助。
虽然android支持SVG,但为什么要将其转换为VectorDrawable?
此代码示例显示Android中的SVG:

SVG svg = SVGParser.getSVGFromResource(getResources(), R.raw.android); imageView.setImageDrawable(svg.createPictureDrawable());

答案您提到的SVGParser功能是针对Android的SVG支持的第三方实现。
在Android中使用SVG的主要问题是:
  • SVG文件可能非常复杂,渲染速度非常慢
  • 我使用的所有第三方实现都有错误,无法正确加载或呈现一些SVG文件
  • 大多数第三方实施已被放弃,似乎没有一个被积极维护
我在下面的文章中写了更多关于在Android中使用SVG文件和可用的第三方库的文章:
https://androidbycode.wordpress.com/2015/02/27/vector-graphics-in-android-part-1-svg/
VectorDrawable支持SVG格式的子集,旨在确保快速呈现。我写过关于VectorDrawable以及如何将现有SVG文件转换为VectorDrawable here的文章。
另一答案
虽然android支持SVG
不,除了通过WebView或第三方SVG渲染库之外,它不会。
为什么我们应该将SVG转换为VectorDrawable?
欢迎您通过WebView或第三方SVG渲染库显示SVG文件。 VectorDrawable是一个选择; 这不是一个要求。
这段代码示例显示了android中的svg:
Android SDK中没有SVGParser类。

    推荐阅读