繁体   English   中英

关闭当前视图控制器并打开新的视图控制器-iOS Swift

[英]Dismiss Current View controller and open new view controller - ios Swift

我有三个视图控制器。 现在我在第二个视图控制器中。 我想关闭当前的视图控制器,然后打开第三个视图控制器。 我该怎么做? 通过使用以下代码,我可以关闭第三视图控制器以及第二视图控制器。

self.presentingViewController?.presentingViewController?.dismissViewControllerAnimated(false, completion: nil)

我的问题是使用此功能时屏幕闪烁。 这意味着第二个视图控制器显示并关闭。 那我该怎么办呢?

我想解散currentview cotroller并打开新的视图控制器

在Android中是可能的。 因此,我希望ios中也有可能。 我该如何实现。 请有人帮我。

编辑1:

我尝试使用以下代码关闭当前视图控制器并打开新的视图控制器。 然后我的第二个和第三个都关闭了。

self.dismissViewControllerAnimated(false) {
    // go back to MainMenuView as the eyes of the user
    presentingViewController.dismissViewControllerAnimated(false, completion: nil)
}

我找到了解决方案

我将所有视图控制器更改为导航控制器的子级。 并从第三个视图控制器中删除历史记录,如下所示

let tempVCA = self.navigationController!.viewControllers
        for tempVC: UIViewController in tempVCA {
            if (tempVC is SECONDVC) {
                tempVC.removeFromParentViewController()
            }
        }

我正在使用Third View Controller的viewdidload func中的这段代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM