视图控制器是否从导航堆栈 Dealloc 中弹出?
Do the View Controllers Popped Out of the Navigation Stack Dealloc?
这可能是一个愚蠢的问题,而且他们似乎确实这样做了,但我只是想确定情况是否总是如此,或者您是否可以以他们不释放的方式设计它。看起来每次将视图控制器推入堆栈时,都会创建该视图控制器的一个新实例;这是默认行为吗?
如果您使用的是故事板,那么是的,每次推送视图控制器时都会创建一个新实例并将其添加到导航控制器堆栈中。
当视图控制器被弹出时,如果没有人持有对它的强引用(这是默认设置),那么它就会被释放。
这可能是一个愚蠢的问题,而且他们似乎确实这样做了,但我只是想确定情况是否总是如此,或者您是否可以以他们不释放的方式设计它。看起来每次将视图控制器推入堆栈时,都会创建该视图控制器的一个新实例;这是默认行为吗?
如果您使用的是故事板,那么是的,每次推送视图控制器时都会创建一个新实例并将其添加到导航控制器堆栈中。
当视图控制器被弹出时,如果没有人持有对它的强引用(这是默认设置),那么它就会被释放。