如何解雇VIewController iOS Swift

时间:2015-12-10 09:12:17

标签: ios swift viewcontroller

我是iOS开发的新手。我正在使用iOS Swift开发应用程序。我有3个视图控制器viewController1,viewController2,viewController3。 当我从viewController1点击它时,它移动到viewController2。使用以下代码

let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let secondViewController = storyboard.instantiateViewControllerWithIdentifier("viewController2")
        presentViewController(secondViewController, animated: false, completion: nil)

现在我使用以下代码

从viewController2移动到viewController3
performSegueWithIdentifier("viewController3", sender: scoreColorArray);

一切都很好。现在我想从viewController3返回到viewController1。我的问题是它不会去viewController1它会去viewController2。我知道viewController2没有被解雇的原因。

我想关闭当前的视图控制器并启动新的。我该怎么做?我知道有一些方法可以做到,请有人帮助我找到问题。

2 个答案:

答案 0 :(得分:2)

由于您的演示序列为VC1 - > VC2 - > VC3您需要在self.presentingViewController?.presentingViewController?.dismissViewControllerA‌​animated上致电VC3,以相反的方式遍历您的序列。

答案 1 :(得分:0)

您可以使用委托来实现它。

  • 您将代理电话从controller 2发送至controller 1以便解雇 控制器2.
  • 在取消成功后,您将从controller 3
  • 推送controller 1

您可以查看此案例的演示:Demo Pushview