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

时间:2016-01-28 14:02:28

标签: ios iphone swift uiviewcontroller

我有三个视图控制器。现在我在第二视图控制器。我想解雇我当前的视图控制器并打开第三个视图控制器。我该怎么做?我可以使用以下代码关闭第三个视图控制器以及第二个视图控制器。

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)
}

1 个答案:

答案 0 :(得分:2)

我找到了解决方案

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

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

我正在使用第三视图控制器viewdidload func

中的这段代码