0x01. gradle版本

v2.0以上

0x02. appcompat版本

高于下面也可以

compile 'com.android.support:appcompat-v7:23.2.0'

0x03. build.gradle

在module的buidl.gradle中添加下面属性.

defaultConfig {vectorDrawables.useSupportLibrary = true}

0x04. 资源的使用

  • 0x01. 使用AppCompatImageView

替换:
ImageView为AppCompatImageView

app:srcCompat代替android:src

<android.support.v7.widget.AppCompatImageViewandroid:id="@+id/xxx_aiv"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentEnd="true"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_gravity="right"app:srcCompat="@drawable/xxx_svg_icon"android:visibility="visible"/>
  • 0x02. 使用ImageView
<ImageView
            android:id="@+id/xxx_aiv"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentEnd="true"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_gravity="right"android:src="@drawable/xxx_svg_icon_selector"android:visibility="visible"/>

在android:src属性中,为了避免兼容性导致的崩溃,则需要把drawable/xxx_svg_icon文件的引用放到selector中.

xxx_svg_icon_selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/xxx_svg_icon_normal" android:state_pressed="true"/><item android:drawable="@drawable/xxx_svg_icon_press"/>
</selector>

PS: Button控件中的属性使用都要按照selector的方式使用资源.

0x04. Activity中的处理

在使用svg资源的activity中使用下面的属性.

static {AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
}

svg的图片需要自己转换

选中要添加矢量图的Module,右击选择New|------Vector Asset
             |------选择Local file
                         |------选中要转换的原始文件
                     |------选择Override(原始文件大小)
                     |------drawable文件夹中生成xml矢量文件

android中使用svg相关推荐

  1. 【Android 安装包优化】Android 中使用 SVG 图片 ( Android 5.0 以下的矢量图方案 | 矢量图生成为 PNG 图片 )

    文章目录 一.Android 5.0 以下的矢量图方案 二.矢量图生成为 PNG 图片 三.完整的 build.gradle 构建脚本 四.编译效果 五.参考资料 一.Android 5.0 以下的矢 ...

  2. 【Android 安装包优化】Android 中使用 SVG 图片 ( SVG 矢量图简介 | Android 中生成 Vector 矢量图资源 )

    文章目录 一.SVG 矢量图简介 二.Android 中生成 Vector 矢量图资源 三.参考资料 一.SVG 矢量图简介 Android SVG 参考文档 : https://developer. ...

  3. android 使用动态的svg资源,在Android中使用SVG作为资源 – victor

    victor 在Android中使用SVG作为资源. 使用这个插件,你可以为SVG定义源文件,它们将会自动在build中光栅化/导入,无需源代码. 安装 在build.gradle中添加: build ...

  4. Android中使用SVG实现炫酷动画效果

    前言 SVG,即Scalable Vector Graphics 可伸缩矢量图形.这种图像格式在前端中已经使用的非常广泛,而在移动端的开发中,遇到一些复杂的自定义控件或者动画效果,我们就可以考虑使用S ...

  5. Android png模拟svg,Android 中使用svg图片

    1. svg认识 SVG:android5.0+出现,w3c推出 使用xml 描述二维图形语言,矢量图,放大缩小无影响 为什么用svg,现在手机的短板是内存,不是cpu,svg通过cpu计算,png占 ...

  6. android中读取svg文件,Android如何加载SVG格式的矢量图

    为何要加载SVG图片 相对于.JPG和.PNG甚至.webp的图片来说,SVG的图片有两个优点,第一:省空间,APK瘦身有一个方面就是从图片瘦身,使用SVG图片可以大量减轻程序的大小.第二:省时间,切 ...

  7. android textview svg,Android中使用SVG与WebFont矢量图标

    一.参考文献 二.html使用方法 1.下载字体 网上百度自己要使用的字体,一般下载的是ttf格式,需要4种(或5)格式,其他的格式可以通过在线工具基于ttf转换 web-fontmin(这个在线转换 ...

  8. svg格式文件android,在Android中显示SVG文件

    我想创建一个在一些平面图上显示位置的应用程序.导航通过WiFi以某种方式实现,我已经做到了,所以现在我有一个显示平面图的问题. 它可能是一些矢量格式,互联网冲浪一段时间后,我决定它必须是svg文件. ...

  9. SVG - 在Android中使用矢量图全攻略

    概念 什么是矢量图,SVG SVG全称:可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像 ...

最新文章

  1. 7个Debug linux程序的Strace 列子
  2. 成都机场迎春运客流高峰 日均起降航班超1000架次
  3. 2018 年值得关注的 Web 设计趋势
  4. spring+springMVC+mybatis的整合 part5
  5. VPC 2007 Console界面消失以及解决方法
  6. Kryo为什么比Hessian快
  7. HDOJ 1160 FatMouse's Speed
  8. mysql数据库隔离级别 实现原理_MySQL事务及Spring隔离级别实现原理详解
  9. 为什么浏览器User-agent(浏览器类型)总是有Mozilla字样?
  10. 【学习资源分享】在线学习平台推荐
  11. App数据抓取(Appium使用)
  12. Android 音乐APP(二)启动白屏优化、定位当前播放歌曲
  13. linux kernel mtd 分区
  14. 多文件在线压缩并下载
  15. 统一JAVA软件开发规范
  16. 电梯门禁系统服务器一般在哪,电梯控制系统与门禁系统的区别
  17. 细思极恐,第三方跟踪器正在获取你的数据,如何防范?
  18. 基于FPGA的DDS 信号发生器(三)
  19. 腾讯徐春明:互联网金融行业HBase实践与创新
  20. 2020-01-07

热门文章

  1. 图像在计算机储存的是什么意思,数字医学图像计算机存储与传输技术.ppt
  2. 虚拟机Centos 7 使用命令 ip addr 不显示IP地址
  3. gb 服务器 维护 维修,H3C R6800 G2服务器 维护指南-6W100
  4. golang 垃圾回收、三色标记法、写屏障
  5. (内附免费下载地址)全网免费获取地形数据的方法
  6. 幸福公寓(仿爱情公寓同居交友) 源码免费发布
  7. 2013年12月综合交友类行业网站综合影响力排名
  8. 利用GINA实现U盘开机锁
  9. div+css静态网页设计——千与千寻-电影图文(9页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计
  10. 数据透视表(图)中添加公式计算与汇总--计算项和计算字段