UIImageView的内存大小

时间:2011-11-24 01:43:24

标签: ios uiimageview memory-management

我想知道UIImageView对象的内存大小,因为我需要显示一些大图像,我需要处理内存。我想这是由图像属性决定的。但我不知道如何计算精算内存大小,下面是我写的测试代码:


    //1.jpg has a size of 4016X2657 and 2.1MB
    NSData *imageData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"1" ofType:@"jpg"]];
    NSLog(@"imageData:%d",[imageData length]);

控制台显示:


 imageData:2070461

这正是2.1MB的大小。

然而,在我看来,UIImageView应该知道每个像素来显示图像,换句话说它应该有一个记忆: 4016*2657*4/1024/1024 = 40.7+MB 它是如此之大,我不知道iOS是否会做一些优化。我也在文档中找不到任何相关内容。

任何人都可以帮助我UIImageView对象的确切内存大小吗?

1 个答案:

答案 0 :(得分:1)

问题中描述了这一点。内存是照片的精算大小,UIImage不会进行优化。