Android svg的适配问题

本文介绍了在Android中使用SVG的适配问题,特别是在API 21之前和之后的系统。官方推荐在API 21及以上版本使用矢量图支持,而更低版本可通过配置Gradle生成PNG或使用Support Library 23.2+的兼容包。两种方案各有优缺点,第一种可能增加APK体积,第二种需要使用app:srcCompat并继承AppCompatActivity。在低版本中,还需处理Drawable的使用和类型转换。
摘要由CSDN通过智能技术生成

在Android 使用SVG的适配主要集中在5.0以后和5.0以前系统

官网说明Android 5.0(API 级别 21)及更高版本会提供矢量图支持。如果应用的最低 API 级别低于以上版本,Vector Asset Studio 会将矢量图文件添加到项目中;另外,在构建时,Gradle 会创建不同分辨率的 PNG 光栅图像。Gradle 会生成 build.gradle 文件中的域特定语言 (DSL) generatedDensities 属性所指定的 PNG 密度。(注:矢量图就是svg的代码文件,光栅图就是自动生成的png)。

以上的官网的说明,下面我们来看下具体使用。
在5.0以前什么都不用做,5.0以前系统有二种方案可以使用。

第一种,生成png图
配置gradle,让svg生成对应版本的png图。如果不配系统会自动生成多套

  defaultConfig {
    vectorDrawables.generatedDensities = ['hdpi','xxhdpi']//低版本的build 命令是generatedDensities
}

在xml使用svg时可以直接android:s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值