2015-11-13 58 views
0

我有3个视图控制器。我可以从A到B,然后从B到C.我已经从B放到A了。当它被执行时,我可以看到视图控制器B已经被释放,并且VC A出现在屏幕上。 为了让我加入一个代码,以VC A和VC制作按钮开卷赛格瑞B.关闭视图控制器从展开segue

@IBAction func unvindSegueToMenu(segue:UIStoryboardSegue) {} 

然而,当我去VC C(从B)我想从VC C到执行开卷Segue公司答:要做到这一点,我把下一个代码给VC B类。

@IBAction func unvindSegueToMainMenu(segue:UIStoryboardSegue) { 
    self.dismissViewControllerAnimated(false, completion: nil) 
} 

后,我按在VC C钮,它让我看到一个VC,因为我想要的,但在分配汇总表我可以看到VC B没有被释放。 我的错误是什么,如何取消分配它?

+0

为什么你需要在B中放入“unvindSegueToMenu:”实现?它应该在A,对不对? –

回答

0

通常,您在代码中发生了错误。 我测试了,我可以清楚地看到,执行unwind segue后VC B被释放

首先确定你做得对。 (例如开卷SEGUE的执行方法应该在目的地VC来实现)

而且还可以在进行退卷后,请检查你有多少viewControllers必须在navigationController..in你的情况应该是2,但如果你以正确的方式来做,它将只有一个。

+0

有些东西肯定是错的,我将方法移除到A,并且它显示VC A,但VC B仍然分配。 – Alex

+0

我发现了一个错误。在我的VC C中,我使用SKView来呈现SKScene,在我执行unwind segue之前,我应该在我的SKScene上使用.removeAllChildren()方法。 – Alex

相关问题