xxhdpi文件夹中的密度是320-480
mdpi文件夹中的密度是120-160
如果,我的手机的密度正好是480,那一个图片600*800的图片从xxhdip中读取到内存中,消耗的内存是 600*800
但是,如果把这个图片放到mdpi文件夹中读取到内存中,其消耗内存应该是
1800 *2400 ,消耗内存增大了9倍。
我想问下,在sd卡上的图片,如果读取到内存中,其内存消耗是怎么计算的呢?
不是很明白你的意思,图片虽然从sd卡等外置存储上读取,但是最终他还是得解码到内存里,供绘图引擎来渲染。
在android中bitmapfactory类有个方法可以解码输入流,在这个方法中可以控制图片释放到内存中的空间占用。占用的计算方式和你提的没什么不同。
######关于不同的 dpi 文件夹读取图片的机制,可以看一下这篇文章。
http://blog.csdn.net/guolin_blog/article/details/50727753
关于从本地文件中读取 bitmap ,可以参考官方的教程。
http://hukai.me/android-training-course-in-chinese/graphics/displaying-bitmaps/index.html
http://hukai.me/android-training-course-in-chinese/graphics/displaying-bitmaps/load-bitmap.html
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。