基本上,我想知道呈现和释放视图控制器的正确方法是什么。
我最初的理解是ViewControllerA用-presentViewController:Animated:Completion:向ViewControllerB展示。然后,ViewControllerB可以通过调用-dismissViewControllerAnimated:Completion:来释放自己。
现在,如果我有三个视图控制器A,B和C。A代表B,B代表C,C返回A,那么我该怎么写呢?我试图要求C撤消B的职务,但这是行不通的。似乎真正起作用的唯一事情是让C再次出现A,但这是否合适?
任何帮助将是巨大的,谢谢!
最佳答案
不,再次出现A是不合适的。这将添加一个新实例,并且当您再次前进到B和C时,这些实例也将是新实例。在C上,您可以使用放松搜索功能返回A,也可以在dismissViewControllerAnimated:completion
上调用self.presentingViewController.presentingViewController
。如果一系列呈现视图控制器中的第一个视图控制器执行了解雇,则会导致所有呈现的控制器都被释放(假设您没有持有其他对它们的强引用)。
关于ios - UIViewController的循环展示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30627293/