放松segue和dealloc

时间:2015-08-11 23:33:00

标签: ios dealloc unwind-segue

我正在尝试了解unwind segue过程。

在展开segue时执行的源视图控制器的dealloc方法是否像UINavigationController后退按钮进程一样被调用?

如果没有,这是否意味着内存泄漏?

1 个答案:

答案 0 :(得分:2)

不直接。 当放弃对视图控制器的所有强引用时,将调用它。 在调出unwind之后,uinavigation控制器应该完成视图控制器,只要你没有在某种导航控制器中强烈地保留它。

它并不总是马上发生,也认为自动释放池。 确保您没有任何强大的代表出口。 (大culplrit)

一个有用的提示是在视图控制器的任何地方寻找'self'的代码,并确定它是否强大,如果它是你必须在展开时nil它或dealloc将不被调用 - 你不应该有为ARC担心dealloc太多 - 除非你有一些你需要管理的对象或非自动无效的弱引用。