首页 存档 资讯 查看内容

Bitmap那些事之内存占用计算和加载注意事项

2018-3-30 13:00 |来自: 互联网 352 0

摘要: 在手机中图片一般都是指Bitmap图片,为什么要说Bitmap呢?因为大家在开发应用的时候,都会使用一些图片来表现UI,用户也喜欢看图片,看文字获取信息太慢并且不直观,如果美工设计的好,看图片基本上不怎么看你的文字 ...


在手机中图片一般都是指Bitmap图片,为什么要说Bitmap呢?因为大家在开发应用的时候,都会使用一些图片来表现UI,用户也喜欢看图片,看文字获取信息太慢并且不直观,如果美工设计的好,看图片基本上不怎么看你的文字内容就知道你要表达什么,例如所有的购物网站都会编辑很多商品的配图来呈现给用户,由此可见图片在应用程序中的常见和重要。只要说到图片就不能离开如何避免OOM这个主题,因为在处理很多图片时很容易出现OOM,那么学习图片处理就显得尤为重要了,下面就让我们一步一步学习图片的相关知识。

Bitmap图片占用内存计算:


Bitmap图片在加载到内存的时候是按照:宽*高*像素点位数来计算的。你可以把图片看成是由width行、height列的矩阵组成,每一个矩阵元素代表一个像素点,每一个像素点都是1byte整数倍的数据,这个数据越大,表示的色彩就越丰富,图片的显示质量就越高。Bitmap中有一个枚举类Config用来配置图片的压缩格式,代表每个像素是用多大的数据来存储的,数值越大能够存储的颜色信息就越多,也就越丰富,显示效果也就越好。Config.ALPHA_8是1 byte,Config.RGB_565和Config.ARGB_4444都是2 bytes,Config.RGB_565没有Alpha值所以多用来配置没有透明度的图片,Config.ARGB_8888是4 bytes,一般图片都是按照这个来配置的。下面是获取配置的代码:


路过

雷人

握手

鲜花

鸡蛋