我有3个视图控制器,以模态方式呈现,如何解除视图控制器并直接从第三个右侧返回到第一个(根)视图控制器。
基本上,当我从第三个调用dismissViewControllerAnimated
时,我希望它也会关闭底层的第二个视图控制器并直接返回第一个视图,从内存中释放其他视图。
修改
简单地说,想要从右边的第三个视图开始,回到第一个视图,而不必经历并解雇中间。显然,我不能只提出第三个,因为这是一个巨大的内存泄漏。
答案 0 :(得分:1)
使用NSNotificationCenter
。
您可以在想要关闭所有视图控制器时发布通知:
NSNotificationCenter.defaultCenter().postNotification("dismissNotification")
然后让这些视图控制器注册以在viewWillAppear
函数中收听此类通知:
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("dismissFunction"), name: "dismissNotificaiton", object: nil)
最后,您在dismissViewController:
dismissFunction
self.dismissViewControllerAnimated(true, completion: nil)
答案 1 :(得分:0)
试试这个:
self.dismissViewControllerAnimated(true, completion: nil)
如果您需要,请告诉我:)。