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

How do I start a flow with a new navigation controller stack?

在我的应用程序中,我从登录流程开始,登录完成后,它将导航到仪表板。我正在尝试重置导航堆栈,这样当我在仪表板中时,我就不会返回到登录屏幕。我可以通过在仪表板中隐藏后退按钮来实现这一点,但我认为重置堆栈是更合适的方法,但我该怎么做呢?

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

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

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

如果您想在登录成功后导航到仪表板:

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

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