我有 3 个 View Controller 。我可以从 A 到 B,然后从 B 到 C。我已经从 B 到 A 进行了展开转场。执行时,我可以看到 View Controller B 已被释放,并且 VC A 出现在屏幕上。 为了做到这一点,我向 VC A 添加了下一个代码,并在 VC B 中的按钮上展开了转场。
@IBAction func unvindSegueToMenu(segue:UIStoryboardSegue) {}
但是,当我转到 VC C(从 B)时,我想执行从 VC C 到 A 的 unwind Segue。为此,我将下一个代码放入 VC B 类。
@IBAction func unvindSegueToMainMenu(segue:UIStoryboardSegue) {
self.dismissViewControllerAnimated(false, completion: nil)
}
当我按下 VC C 中的按钮后,它会按我想要的方式显示 VC A,但在分配摘要中我可以看到 VC B 尚未被释放。 我的错误是什么?我该如何解除它?
最佳答案
通常,您的代码中出现了错误。 我进行了测试,可以清楚地看到执行展开转场后VC B 被释放。
首先确保您做对了。 (例如,unwind segue 的执行方法应该在目标 VC 中实现)
您还可以在执行展开后检查 navigationController 中有多少个 viewController。在您的情况下应该是 2 ,但如果您以正确的方式执行,它将只有一个。
关于ios - 从 unwind segue 中关闭 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33699238/