0
我试图修复我的应用程序中的内存泄漏,并偶然发现了一件非常有趣的事情。现在我不确定是否有某个地方出现了问题,或者仅仅是滥用了这项技术,所以我会尽力在您的帮助下清理问题。这里是发生了什么:UIViewController不释放其视图
- 我创建加载从笔尖文件
- 我释放控制器
- 控制器的dealloc方法被调用其中i释放,我已经专门添加到自定义视图视图自定义的UIViewController视图层次作为出口(我做了一个可保留的属性)。它有一个调用nslog的dealloc方法。
- 在笔尖文件(连接到控制器的视图出口)的主视图也是一个UIView其中也有一个呼叫在其的dealloc
的问题是NSLog的的一个子类 - 即使UIViewController的dealloc的是被叫,既没有主视图也没有孩子(有插座的人)被释放(他们的NSLog不会被触发)。
这是否正常?也许iOS不会立即发布视图?或者我应该开始寻找代码中的错误?如果是这样 - 最可能的原因是什么?
感谢您阅读
您使用ARC吗? – 2012-01-10 22:35:52
您是否将您的主视图附加到了您的视图控制器的保留属性中,而您并未发布?也许? – mattjgalloway 2012-01-10 22:35:53
我认为你需要发布一些代码,因为很难完全理解你所做的事情。但它听起来像是在泄漏物体。 – drekka 2012-01-11 00:04:25