亲测环境

  • classpath 'com.android.tools.build:gradle:2.3.1'

  • compileSdkVersion 23buildToolsVersion "25.0.0"
    defaultConfig {minSdkVersion 17targetSdkVersion 23versionCode 1versionName "1.0"vectorDrawables.useSupportLibrary = true
    }

Activity 继承AppcompatActivity

1.可以正常的使用ImageView

<ImageView
       android:layout_width="wrap_content"android:layout_height="wrap_content"app:srcCompat="@drawable/ic_wc_black_24dp"/>

2.但是无法使用
android:background="@drawable/ic_wc_black_24dp" 设置背景,可以在代码中进行设置:

Resources resources = getResources();Resources.Theme theme = getTheme();Drawable drawable = VectorDrawableCompat.create(resources, R.drawable.ic_wc_black_24dp, theme);
findViewById(R.id.ttt).setBackground(drawable);

3.在这种情况下是可以使用AppCompatImageView和AppCompatImgaeButton.

  <android.support.v7.widget.AppCompatImageViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"app:srcCompat="@drawable/ic_wc_black_24dp"/><android.support.v7.widget.AppCompatImageButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"app:srcCompat="@drawable/ic_wc_black_24dp"/>

但是仅限于这两种原生控件,在其他非src的场景下,有两种方法可以设置,第一种:就只能按照上述方法在代码中动态的设置。第二种:将矢量图用drawable容器(如StateListDrawable, InsetDrawable, LayerDrawable, LevelListDrawable, 和RotateDrawable)包裹起来使用,否则会在低版本的情况下报错。

Activity没有继承AppCompatActivity时

此时要使用ImageView和ImageButton 就只能使用使用AppCompatImageView和AppCompatImageButton了。使用方法依然同上。其他的情况只适用于代码中获取到Drawable之后再设置的情况。

在该种情况下即使将矢量图包裹到Drawable容器里,也无法使用。ImageView和ImageButton使用srcCompat会被直接忽略掉。

亲测在该环境里没有生成相对应的png图片

听一部分资料说明,会在build里生成相应的png图片,但是在该种环境下,并没有生成相应的图片,怀疑与什么地方的配置有关。

androidStudio 中使用矢量图相关推荐

  1. powerdesigner怎么导出pdf_各种科研绘图软件中的矢量图导出技巧

    引言 科技论文常含有插图,借助插图来形象直观.简明扼要地表达所要表述的内容(梁福军. 科技论文规范写作与编辑[M]. 清华大学出版社, 2014.).科研绘图软件有很多种,而软件导出的图片可以分为矢量 ...

  2. Android tips(十二)--Android开发中使用矢量图

    转载请标明出处:一片枫叶的专栏 本文我们将介绍一些关于Android矢量图的相关知识点.最新的项目中要求以矢量图替代传统的.png资源文件,所以特意学习了一下Android中的矢量图相关概念,不得不说 ...

  3. Android开发中使用矢量图

    本文我们将介绍一些关于Android矢量图的相关知识点.最新的项目中要求以矢量图替代传统的.png资源文件,所以特意学习了一下Android中的矢量图相关概念,不得不说矢量图还是一个比较好的适配方案. ...

  4. Illustrator 教程:如何在 Illustrator 中对矢量图进行变形、定形和塑形?

    欢迎观看illustrator教程,小编带大家学习 illustrator 的基本工具和使用技巧,了解如何在 illustrator 中不改变其他区域的情况下对矢量图的一部分进行平滑调整. 打开文件中 ...

  5. androidstudio加载矢量图

    VectorDrawable 是android SDK 21及以上版本才支持的方式,在它及它以上的版本中SDK可以支持矢量图.由于国内手机大多还是4.0+的系统,因此在低版本的手机中无法使用矢量图. ...

  6. 在html页面中加入矢量图,HTML页面插入SVG的多种方式

    SVG (Scalable Vector Graphics) 可缩放矢量图,是一种基于XML语法的图像格式.其他图像格式都是基于像素处理的,SVG则是属于对图像的形状描述,所以它本质上是文本文件,体积 ...

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

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

  8. word中插入矢量图的方法

    word中插入eps矢量图的方法 众多小伙伴在写论文时肯定需要在word中插入eps矢量图,我在网上查询了很多方法,有将eps转换成emf直接插入word的,但显示效果还是不好,依然不是矢量图的效果. ...

  9. Vue中使用矢量图图标

    在前台页面中开发过程中,有时候我们需要使用一些图标,来使我们的页面变得更加好看,下面介绍在vue中如何添加阿里巴巴的矢量图的图标 打开阿里巴巴矢量图标库https://www.iconfont.cn/ ...

  10. 在html页面中加入矢量图,HTML5画布矢量图形?

    有一些选择. 我没有使用过任何一个库,但是据我所知,Cake看起来通常更令人印象深刻,并且可以导入,但也大了三倍. 还有Burst Engine,目前是processing.js的扩展,甚至更小. 我 ...

最新文章

  1. 视频监控日常使用存在哪些故障
  2. exchange 2010 集线器(hub)外发邮件的配置
  3. java phantomjs_Java爬虫:Jsoup + Phantomjs
  4. linux下使用pidcat找bug
  5. Dijkstra 算法——计算有权最短路径(边有权值)
  6. rad linux下安装mysql_Rad Hat Enterprise Linux 5.5上安装Oracle 11g R2
  7. [转]编程常用英语单词
  8. Python使用wordcloud做词云
  9. EXFO max-715b光纤测试仪参数介绍
  10. NLP学习笔记30-SVM 对偶、KTT,核函数
  11. 下班后可以做点什么副业赚钱呢?
  12. matlab中度数化成度分秒,地学中常用度、度分、度分秒,弧度、角度在MATLAB中的转换...
  13. 连续空间和离散空间的距离基础
  14. [附源码]Java计算机毕业设计SSM动物园动物饲养管理
  15. MySQL 6:MySQL存储过程、存储函数
  16. what is Differential steering and skid steering ?
  17. CoAP学习笔记(1)CoAP报文结构
  18. 基于微信小程序的快递取件及上门服务——计算机毕业设计
  19. 体育世界杂志体育世界杂志社体育世界编辑部2022年第4期目录
  20. JZ高中OJ 1420.佳肴

热门文章

  1. WPS全部常用快捷键
  2. gb2312tobig5 delphi简繁转换
  3. vue中加载OCX控件(IE浏览器执行)
  4. 我对SegNet的理解
  5. SIM卡高速PCB设计指南
  6. 计算机英语加密信息,计算机信息安全中数据加密技术-计算机英语论文-计算机论文(10页)-原创力文档...
  7. 初中参观机器人博物馆的作文_参观足球机器人实验室_550字
  8. 下载qq付费音乐的demo
  9. 内存超频软件哪个好 内存超频教程
  10. 考研词汇5500+地名