【发布时间】:2015-07-22 09:05:31
【问题描述】:
我试图了解使用(和不使用)使用 NavigationController 的 ViewController 之间导航的行为,但在阅读文章和文档时我误解了一些事情,所以我决定问他们。
主要问题是:如果我们在 Storyboard 中有多个 NavigationController 并且想要从一个到另一个,会发生什么? (这可以像我们在普通 VC 之间使用 segues 来实现,对吗?)
据我了解,NavigationController 代表 ViewController 堆栈,我们可以在其中弹出和推送这些 VC。所以现在我们将“位置”从第一个 NavigationController 的 VC 更改为第二个的 VC,接下来会发生什么?第一个堆栈消失了,现在我们只在第二个堆栈中工作?如果是这样,是否意味着第一个 NavigationController 的 VC 堆栈已从内存中删除?
也许我完全误解了某些东西,也许没有:)。我很高兴看到您的回复,并希望向您询问有关导航机制的更多详细问题。
更新
重点是:假设我们有一个(初始)VC,其中有两个按钮,代表应用程序的两个独立部分。接下来,我们单击第一个按钮并转到一个 NC 的 RootVC,而不是回到我们最初的 VC 点击第二个按钮并转到另一个 NC。当我们回到初始 VC 时,第一个 NC 的堆栈发生了什么?将“外部”NC 转到初始 VC 的最佳方式是什么?
更新
我试图了解内存会发生什么,以及当前场景中有哪些 VC 等等。如果我们在场景中有一些额外的 VC,也许这绝对不重要,也许我们确实需要它们来更快地在 NC(或只是 VC)之间切换。所以我只想了解它实际上是如何工作的。
【问题讨论】:
标签: ios swift segue viewcontroller