我在图像视图中从url加载图像。如果图像的分辨率为4000 * 2400,则图像尺寸为1.6MB,然后加载图像时。仅为图像加载,内存增加到30MB。但如果大小小于10 KB,则大小不会增加。我知道我必须使用小图像作为拇指图像加载,但只是为了学习我想知道这一点。
我使用下面的代码加载图片
self.imgStore.kf.setImage(with: url, placeholder: #imageLiteral(resourceName: "placeholder"), options: nil, progressBlock: { (val, val1) in }) { (image, error, cache, url) in
DILog.print(items: "image recived")
}
答案 0 :(得分:1)
1.5MB是压缩大小。 PNG在内存中解压缩,它以像素为基础消耗内存(RGBA)。因此,大小将为4000 * 2400 * 4 ~= 38MB
如果您的图片太大而无法更改分辨率。