【发布时间】:2015-05-12 05:40:40
【问题描述】:
我的应用程序的逻辑有些问题。
我一直在寻找一种方法来更改导航控制器的视图控制器堆栈。
有几个原因。
第一,我有一个登录和注册页面,每个页面都有按钮推送到另一个视图控制器。创建一个能够在它们之间运行的 /infinite/ 循环。
我还需要在用户登录后将topViewController更改为我的dashboard_VC。所以登录页面的后退按钮不显示......
我一直在尝试寻找解决方案。我主要关注的是 rootViewController,直到我意识到这可能不是我正在寻找的那个,因为我的 rootViewController 是我的 navigationController,而不是我在堆栈中的第一个 View Controller。
所以我尝试用这个来改变堆栈:
self.navigationController?.setViewControllers([LandingPageVC(),LoginVC()], animated: false)
但是,这会导致无限循环。由于每次加载这个viewController时它都会运行,并且当它运行时,它似乎重新加载了所有的viewcontroller......
我尝试将其放入 viewDidAppearAnimated 中。但同样的结果。从那以后,我一直试图将它放在 viewDidLoad 或 Appear 方法之外。但我无法让它工作,因为该类没有“navigationController”。
任何帮助将不胜感激!
(我没有使用故事板)
【问题讨论】:
标签: ios swift uiviewcontroller uinavigationcontroller