在导航堆栈中考虑一个具有四个屏幕(A、B、C 和 D)的简单应用程序。导航按字母顺序 A -> B -> C -> D。
在那种情况下,我习惯于在视图控制器中创建一个成员变量来显示另一个。在我的示例中,A 保留对 B 的引用,B 对 C 和 C 对 D 的引用。
这些引用将保留在内存中,直到所有者控制器被释放。我使用这种方法来最小化控制器的创建,并在显示之前显示的屏幕时获得一些优化。
但我不知道每次需要时创建和自动释放每个控制器是否更好,而不保留它。会有更多的创作,但在一段时间内使用的内存会更少。
更好的方法是什么?