[英]popping to root view controller
我有一个警报,其“确定”按钮应弹出到根视图控制器。
这是我正在使用的结构:
[选项卡视图控制器]-> [导航控制器]-> [视图控制器] -> [视图控制器] -> [导航控制器]-> [视图控制器]-> [警告]
我希望警报上的“确定”按钮将我带到我上面已加粗的视图控制器。 当我执行下面的代码时,我回到上面斜体的视图控制器,这并不是我想要的。 任何帮助将非常感激! 谢谢!
alert.addAction(UIAlertAction(title: OK, style: UIAlertActionStyle.default, handler: { action in
DispatchQueue.main.async(execute: {
_ = self.dismiss(animated: true, completion: nil)
})
}))
我还尝试了使用特殊方法弹出到根视图控制器,但是遗憾的是,这没有用。
您需要浏览导航堆栈的特定索引。 例如:-首先获取导航堆栈中存在的视图控制器的数量。 弹出特定索引。 在您的情况下,它的index
可能是0:
let arr_controller:[UIViewController] = (self.navigationController?.viewControllers)!
_ = self.navigationController?.popToViewController(arr_controller[0], animated: true)
let tabVc = (UIApplication.shared.delegate as! AppDelegate).window?.rootViewController as? UITabBarController
tabVc?.selectedViewController?.navigationController?.popToRootViewController(animated: true)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.