androidStudio 中使用矢量图
亲测环境
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 中使用矢量图相关推荐
- powerdesigner怎么导出pdf_各种科研绘图软件中的矢量图导出技巧
引言 科技论文常含有插图,借助插图来形象直观.简明扼要地表达所要表述的内容(梁福军. 科技论文规范写作与编辑[M]. 清华大学出版社, 2014.).科研绘图软件有很多种,而软件导出的图片可以分为矢量 ...
- Android tips(十二)--Android开发中使用矢量图
转载请标明出处:一片枫叶的专栏 本文我们将介绍一些关于Android矢量图的相关知识点.最新的项目中要求以矢量图替代传统的.png资源文件,所以特意学习了一下Android中的矢量图相关概念,不得不说 ...
- Android开发中使用矢量图
本文我们将介绍一些关于Android矢量图的相关知识点.最新的项目中要求以矢量图替代传统的.png资源文件,所以特意学习了一下Android中的矢量图相关概念,不得不说矢量图还是一个比较好的适配方案. ...
- Illustrator 教程:如何在 Illustrator 中对矢量图进行变形、定形和塑形?
欢迎观看illustrator教程,小编带大家学习 illustrator 的基本工具和使用技巧,了解如何在 illustrator 中不改变其他区域的情况下对矢量图的一部分进行平滑调整. 打开文件中 ...
- androidstudio加载矢量图
VectorDrawable 是android SDK 21及以上版本才支持的方式,在它及它以上的版本中SDK可以支持矢量图.由于国内手机大多还是4.0+的系统,因此在低版本的手机中无法使用矢量图. ...
- 在html页面中加入矢量图,HTML页面插入SVG的多种方式
SVG (Scalable Vector Graphics) 可缩放矢量图,是一种基于XML语法的图像格式.其他图像格式都是基于像素处理的,SVG则是属于对图像的形状描述,所以它本质上是文本文件,体积 ...
- SVG - 在Android中使用矢量图全攻略
概念 什么是矢量图,SVG SVG全称:可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像 ...
- word中插入矢量图的方法
word中插入eps矢量图的方法 众多小伙伴在写论文时肯定需要在word中插入eps矢量图,我在网上查询了很多方法,有将eps转换成emf直接插入word的,但显示效果还是不好,依然不是矢量图的效果. ...
- Vue中使用矢量图图标
在前台页面中开发过程中,有时候我们需要使用一些图标,来使我们的页面变得更加好看,下面介绍在vue中如何添加阿里巴巴的矢量图的图标 打开阿里巴巴矢量图标库https://www.iconfont.cn/ ...
- 在html页面中加入矢量图,HTML5画布矢量图形?
有一些选择. 我没有使用过任何一个库,但是据我所知,Cake看起来通常更令人印象深刻,并且可以导入,但也大了三倍. 还有Burst Engine,目前是processing.js的扩展,甚至更小. 我 ...
最新文章
- 视频监控日常使用存在哪些故障
- exchange 2010 集线器(hub)外发邮件的配置
- java phantomjs_Java爬虫:Jsoup + Phantomjs
- linux下使用pidcat找bug
- Dijkstra 算法——计算有权最短路径(边有权值)
- rad linux下安装mysql_Rad Hat Enterprise Linux 5.5上安装Oracle 11g R2
- [转]编程常用英语单词
- Python使用wordcloud做词云
- EXFO max-715b光纤测试仪参数介绍
- NLP学习笔记30-SVM 对偶、KTT,核函数
- 下班后可以做点什么副业赚钱呢?
- matlab中度数化成度分秒,地学中常用度、度分、度分秒,弧度、角度在MATLAB中的转换...
- 连续空间和离散空间的距离基础
- [附源码]Java计算机毕业设计SSM动物园动物饲养管理
- MySQL 6:MySQL存储过程、存储函数
- what is Differential steering and skid steering ?
- CoAP学习笔记(1)CoAP报文结构
- 基于微信小程序的快递取件及上门服务——计算机毕业设计
- 体育世界杂志体育世界杂志社体育世界编辑部2022年第4期目录
- JZ高中OJ 1420.佳肴