我有以下场景storyboard
VC1 => NavC => VC2 => VC3 => VC4 我segue
根据条件以编程方式从 VC1 到 VC2 或 VC3(我通过实例化 NavC 并更改 viewControllers 数组来做到这一点)。现在我想从 VC4 放松到 VC1,但我认为我做错了什么,因为它被忽略了,什么也没有发生。为此,我IBAction
在 VC1 中定义了一个名为 unwind1,然后我创建了一个segue
从 VC4 到其出口的出口并将其命名为 segue1。我也有子类UINavigationController
,并有以下方法:
override func viewControllerForUnwindSegueAction(action: Selector, fromViewController: UIViewController, withSender sender: AnyObject!) -> UIViewController {
return self.presentingViewController!
}
override func segueForUnwindingToViewController(toViewController: UIViewController, fromViewController: UIViewController, identifier: String?) -> UIStoryboardSegue {
return UIStoryboardSegue(identifier: identifier, source: fromViewController, destination: toViewController)
}
在 VC4 的方法 1 中,我调用self.performSegueWithId("unwind1")
. 虽然当我跟踪执行控制到达这一行但它被忽略了。当我在上述两个方法中设置断点时,执行控制永远不会到达那里。关于我做错了什么有什么想法吗?