[英]UIImageView Memory Problem
我在视图控制器中将UIImageView属性设置为“分配”。 每次按下按钮时,我都会将视图中的图像设置为新的图像。 由于我使用其他组件的方式,每次我更改图像然后重新添加图像时,都必须删除removeSuperSuperView并释放UIImageView。 这似乎不是造成内存问题的原因-使用现有的UIImageView而不释放它时,内存仍然会增加(但是存在大小问题,这就是为什么我要重新创建它)。
由于某些原因,使用setImage将使应用程序的内存使用量增加约0.8mb(图像大小)。 当我不设置图像时,内存似乎保持相对恒定。 有什么想法吗?
[self.pictureView setImage: img];
[self.pictureView setFrame: CGRectMake(0,0,[img size].width, [img size].height)];
[img release];
我认为您正在泄漏UIImageView,并且当您泄漏UIImageView时,您正在泄漏其中的图像。
这取决于您如何重新创建UIImageView。 在将新视图设置为属性之前,请确保释放了旧的图像视图。
最好将属性设置为“保留”,因为当您为保留属性设置新值时,它会释放旧实例。
也许在设置图像以清除引用之前将UIImageView设置为nil?
pictureView.image=nil;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.