如何计算图片所占内存大小
其实图片所占内存大小和图片本身大小几乎没啥关系, 为什么这么说呢?
我现在把一张图片加载到内存去计算它的宽和高,图片如下:
你看啊 它的大小是72*72,现在我放在不同的目录下看看它的宽和高,
drawable
它的宽和高是144*144
drawable-hdpi
它的宽和高是96*96
drawable-mdpi
它的宽和高是144*144
drawable-xhdpi
它的宽和高是72*72
drawable-xxhdpi
它的宽和高是48*48
drawable-xxxhdpi
它的宽和高是36*36
是不是感觉很奇怪,为什么放在不同的目录下 图片的宽和高变化这么大呢?先看一张图:
另外说明drawable 的densityDpi的值为1和mdpi是一样的,
那原始图片是72*72 怎么读取出来是144*144呢说明宽和高都是乘了2,这个可能不能说明问题,拿xxxhdpi也说它是36*36,但是它的densityDpi是4。72不管是乘以4还是除以4都不等于36啊,这其中就要涉及到屏幕的像素密度了,
DisplayMetrics metric = new Display