114、drawable和mipmap 目录下图片的区别
android 在 API level 17 加入了 mipmap 技术,对 bitmap 图片的渲染支持 mipmap 技术,来提高渲染的速度和质量。
mipmap 是一种很早就有的技术了,翻译过来就是纹理映射技术。android 中的 mipmap 技术主要为了应对图片大小缩放的处理,在android 中我们提供一个 bitmap 图片,由于应用的需要(比如缩放动画),可能对这个 bitmap 进行各种比例的缩小,为了提高缩小的速度和图片的质量,android 通过 mipmap 技术提前对按缩小层级生成图片预先存储在内存中,这样就提高了图片渲染的速度和质量。
api 中通过 Bitmap 的 public final void setHasMipMap (boolean hasMipMap) 方法可以让系统渲染器尝试开启 Bitmap 的 mipmap 技术。但是这个方法只能建议系统开启这个功能,至于是否正真开启,还是由系统决定。
res 目录下面 mipmap 和 drawable 的区别也就是上面这个设置是否开启的区别。mipmap 目录下的图片默认 setHasMipMap 为 true,drawable 默认 setHasMipMap 为 false。
google 建议大家只把 app 的启动图标放在 mipmap 目录中,其他图片资源仍然放在 drawable 下面。
将icon放置在mipmap文件夹还可以让我们程序的launcher图标自动拥有跨设备密度展示的能力
比如说一台屏幕密度是xxhdpi的设备可以自动加载mipmap-xxxhdpi下的icon来作为应用程序的launcher图标,这样图标看上去就会更加细腻。
鉴于mipmap这个特性,回答上面提出的问题,我们将所有的资源图片放在mipmap下面,Android系统将不得不耗费时间去寻找合适的图片,相反,放在drawable相应文件夹下,Android系统很容易根据密度找到对应的资源文件。
把splash启动图片 和一些自己项目里要执行缩放动画的图片放进去即可 其余的还放在drawable下面。
放在mipmap下 系统也就是自动设置的setHasMipmap为true了 会提前进行一个压缩 提高渲染的速度 其余的放里面就有点耗性能了。
114、drawable和mipmap 目录下图片的区别的更多相关文章
- Android 获取SDCard中某个目录下图片
本文介绍Android开发中如何获取SDCard中某目录下的所有图片并显示出来,下面的我们提供的这个函数是通用的,只要提供路径就可以查询出该目录下所有图片的路径信息,并保存到一个List<Str ...
- res/drawable目录下图片的Uri
http://liuyun025.iteye.com/blog/1280838 有时候,我们要用到res/drawable目录下的图片Uri,而这个Uri该如何生存呢?下面就是这Uri的生成方法: U ...
- Android获取res目录下图片的uri
Uri.parse("android.resource://" + getApplicationContext().getPackageName() + "/" ...
- android 显示目录下图片
知识点 1. 网格视图 2. 读取文件 MainAcitvity package com.test.gridview; import android.support.v7.app.AppCompatA ...
- 在android工程中,res目录下又有anim、drawable、layout、menu、raw、values和xml文件夹,分别用来保存?
res目录主要是存放资源文件的!layout 布局 这个就是你经常看到的与用户交互的界面的 xml 文件,就是各个 view 的排列和嵌套,没什 么好说的啦 风格和主题. 风格主要是指 view 的显 ...
- Android复制assets目录下的图片到内存
转自:http://www.chenwg.com/android/android%E5%A4%8D%E5%88%B6assets%E7%9B%AE%E5%BD%95%E4%B8%8B%E7%9A%84 ...
- 获取Assets目录下的图片显示并上传
package com.jingle.getlocal; import java.io.ByteArrayOutputStream; import java.io.InputStream; impor ...
- 获取Assets目录下的图片并显示
package com.jingle.getlocal; import java.io.InputStream; import android.app.Activity; import android ...
- winform 在指定目录下已经生成资源Image图片的方式
假设在项目目录下存在一个Image目录,注意其中图片已经都设置成为:生成方式为资源文件. /// <summary> /// 得到要绘置的图片对像 /// </summary> ...
随机推荐
- sql基本查询语句
查询语句的五中字句:where(条件查询),having(筛选),group by(分组),order by(排序),Limit(限制结果数) 一 单表查询 1.查询指定列:select 列名 fro ...
- CSS常用
1.CSS3新增特性,目前主流浏览器都支持 -webkit-user-select: none; /* Chrome all / Safari all /opera15+*/ -moz-user- ...
- ISDN简记
简介 ISDN:(Integrated Services Digital Network,综合业务数字网) 是以综合数字电话网(IDN)为基础发展演变而形成的通信网,能够提供端到端的数字连接,用来支持 ...
- 【分块】教主的魔法 @洛谷P2801/upcexam3138
时间限制: 1 Sec 内存限制: 128 MB 题目描述 教主最近学会了一种神奇的魔法,能够使人长高.于是他准备演示给XMYZ信息组每个英雄看.于是N个英雄们又一次聚集在了一起,这次他们排成了一列, ...
- Linux Performance Profiling & Visualization
https://github.com/figozhang/CLK/tree/master/CLK2016 http://www.linuxep.com/
- 让你提升命令行效率的 Bash 快捷键
生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...
- centos安装系统全过程
--查看系统 lsb_release -a --查看端口 netstat -lnp|grep 80 ps 进程ID #查看进程的详细信息 kill -9 进程ID --查看Java 版本 java - ...
- IE中的console.log
部分情况下,IE中如果控制台没有开启,打印console.log可能会报错,一下为兼容方案: if(window.console && console.log) { console.l ...
- oracle去掉字段全部空格进行模糊查询
sql如下: select * from pwlp_law_person where replace(name,' ','') like replace('吕 刚',' ','');
- Mysql查询特定值是哪些表哪些字段
摘自网上 -- 查询整个数据库中某个特定值所在的表和字段的方法 # flush tables; -- 创建表来存储查询结果 drop table if exists tmp_table; CREATE ...