Android工程使用SVG图片
一、Android studio与svg
参考:https://developer.android.google.cn/studio/write/vector-asset-studio.html
svg全称scalable Vector Graphics,可缩放矢量图,svg不会像位图一样因缩放而让图片质量下降。优点在于节省空间和内存。常用语简单小图标。
svg是由xml文件定义的,标准的svg图片是以
android通过vector来对svg进行支持,根节点为
一张svg图片需要通过转换才能在android中使用。
二、转换svg
android studio上单独转换svg图片,如果有多个svg文件要转换成vector文件,则可以通过第三方工具。
参考:https://github.com/MegatronKing/SVG-Android/blob/master/svg-vector-cli/bat/svg2vector-cli-1.0.0.jar
执行转换
java -jar svg2vector-cli-1.0.0.jar -d . -o a -h 20 -w 20
-d 指定svg文件所在的目录
-f 指定单个svg文件
-h 设置转换后的svg的高度
-w 设置转换后的svg的宽度。
-o 设置android vector的输出目录。
三、svg的兼容
参考:https://developer.android.google.cn/studio/write/vector-asset-studio.html
android 5.0(API 21)更高级别会提供矢量图支持,如果应用api等级低于21:
1、png生成:
app/build.gradle中添加generatedDensities = ['xhdpi','hdpi']
然后,androidstudio就会生成相应分辨率的png图片。
2、支持库
需要android支持库23.2以上版本,适用于gradle的android插件2.0或者更高版本。利用支持库中的VectorDrawableCompat,可实现在android2.1以上版本支持vector
并且在布局中用app:srcCompat代替android:src。
更多相关文章
- android预览word(WPS预览)
- android 控件: xml 设置 Button 按下背景
- Android(安卓)Studio 生成的目录,对应应用Logo的尺寸___ AS 与 Ec
- Tools属性Tools Attributes
- Android使用Gradle进行打包混淆,包括依赖Library
- Android(安卓)7.0 判断是否支持多用户模式
- 如何将当前布局用代码保存在png图像文件中?
- android学习笔记(一) 遍历SD卡中所有文件并在listview中显示
- Android(安卓)studio打包生成apk