1

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

当 unwind segue 像UINavigationController后退按钮过程一样执行时,是否调用源视图控制器的 dealloc 方法?

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

4

1 回答 1

2

不是直接的。当所有对视图控制器的强引用都被放弃时,它将被调用。调用 unwind 后,uinavigation 控制器应该与视图控制器一起完成,只要您没有在某种导航控制器或其他东西中强烈保留它。

它并不总是立即发生,想想自动释放池。确保您也没有任何强大的代表渠道。(大罪魁祸首)

一个有用的提示是在视图控制器的代码“self”的任何地方寻找,并确定它是否强大,如果是,你必须在 unwind 中将它 nil 或者不会调用 dealloc - 你不应该担心ARC 的 dealloc 太多 - 除非您有一些需要管理的对象或非 auto-nil 弱引用。

于 2015-08-12T01:17:46.357 回答