如何使用新的导航控制器堆栈开始流程?

时间:2019-06-05 09:49:12

标签: ios swift navigation uinavigationcontroller

在我的应用程序中,我从登录流程开始,登录完成后,它将导航至仪表板。我试图重置导航堆栈,以便在仪表板中时不会回到登录屏幕。我可以通过在Dashboard中隐藏“后退”按钮来实现此目的,但是我相信重置堆栈是一种更合适的方法,但是我该怎么做?

1 个答案:

答案 0 :(得分:0)

将根视图控制器更改为新的UINavigationController。

如果必须检查用户是否已经登录,请在找到登录会话后在AppDelegate中执行以下操作:

self.window?.rootViewController = UINavigationController(rootViewController: dashboardVC)

如果要在登录成功后导航至仪表板:

let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.window?.rootViewController = UINavigationController(rootViewController: dashboardVC)

此代码从新的导航堆栈启动viewController,其中DashboardViewController是堆栈的根viewController。