我正在使用以下代码从
然而,有一些奇怪的行为。
一开始,我使用png数据,每个NSData大约80kB。
当我使用该数据设置UIImage时,每个UIImage占用128kb。
(使用Allocation工具检查,ImageIO_PNG_Data的大小)
然后我改用jpeg,每个NSData变成了大约7kb。
但是,UIImage仍然是每个128kb,因此在显示图像时没有内存优势! (NSData减少到80kb-> 7kb,仍然需要相同数量的内存来存储UIImage)
这很奇怪,为什么UIImage应该占用128kb,而原始数据只有7kb?
我可以通过不缩小UIImage本身的情况下减少UIImage的内存使用吗?
请注意,我没有处理高分辨率图像,因此调整图像大小不是选项(NSData已经是7kb!)
将不胜感激任何帮助。
谢谢!
NSData
中加载UIImage
:var image = UIImage(data: data!)
然而,有一些奇怪的行为。
一开始,我使用png数据,每个NSData大约80kB。
当我使用该数据设置UIImage时,每个UIImage占用128kb。
(使用Allocation工具检查,ImageIO_PNG_Data的大小)
然后我改用jpeg,每个NSData变成了大约7kb。
但是,UIImage仍然是每个128kb,因此在显示图像时没有内存优势! (NSData减少到80kb-> 7kb,仍然需要相同数量的内存来存储UIImage)
这很奇怪,为什么UIImage应该占用128kb,而原始数据只有7kb?
我可以通过不缩小UIImage本身的情况下减少UIImage的内存使用吗?
请注意,我没有处理高分辨率图像,因此调整图像大小不是选项(NSData已经是7kb!)
将不胜感激任何帮助。
谢谢!