我有一个带有四个标签的tabBarController。从每个选项卡中,我可以浏览一系列视图控制器。在最后一个视图控制器中,我有一个'完成'按钮,单击我必须重定向到我的初始tabBarController。我目前使用的代码如下(按下按钮)。
Runnable jar
但我觉得这不是正确的方法,因为导航堆栈不断添加。相反,我想清除导航堆栈并在堆栈中显示第一个tabBarController。我该如何解决这个问题?
答案 0 :(得分:2)
使你的第一个viewController成为你的根视图控制器然后点击按钮
self.navigationController?.popToRootViewController(animated: true)
答案 1 :(得分:0)
我认为设置根控制器可以解决您的问题。
if let window = UIApplication.shared.keyWindow {
let tabVC = UINavigationController(rootViewController: tabViewController())
window.rootViewController = tabVC
}
答案 2 :(得分:0)
使用可用方法>>
func popToRootViewController(animated:Bool) - > [UIViewController中]
此方法清除堆栈并将您置于根视图控制器 请阅读文档以获取详细信息