UIView的removeFromSuperView方法是否从内存中删除了UIView

时间:2011-01-14 11:09:01

标签: iphone cocoa cocoa-touch

UIView的removeFromSuperView方法是否从内存中删除了UIView?我只是想确保视图不再使用任何内存?

2 个答案:

答案 0 :(得分:41)

UIView会保留其子视图,因此当您调用-removeFromSuperview方法时,您的视图对象就会被释放。

因此,如果您的内存管理中的所有其他内容都没有问题,并且您的视图不会被其他任何内容保留,那么是 - 您的视图应该被取消分配并从内存中删除。

简单地从超级视图中删除视图的可能示例可能不足以解除分配它可以是具有出口连接的视图和具有retain属性的声明属性 - 在这种情况下,当从nib文件加载时,它由控制器保留并且您可能需要为该案例发布该视图:

[iVarView removeFromSuperview];
self.iVarView = nil;

答案 1 :(得分:15)

是。调用removeFromSuperView方法后,该视图也会从内存中释放。

如果您想使用Apple的文档进行确认,则here是链接。