基本上我想知道呈现和释放视图控制器的正确方法是什么。
我最初的理解是ViewControllerA使用-presentViewController呈现ViewControllerB:Animated:Completion:。然后ViewControllerB可以通过调用-dismissViewControllerAnimated释放自己:完成:。
现在,如果我有三个视图控制器,A,B和C. A表示B,B表示C,C表示返回A,我该怎么写?我试图在B上用C来解雇,但这不起作用。实际上似乎唯一有用的就是让C再次出现A,但这是正确的吗?
任何帮助都会很棒,谢谢!
答案 0 :(得分:3)
不,再次出现A是不恰当的。这将添加一个新实例,当您再次前进到B和C时,这些也将是新实例。在C中,您可以使用展开segue返回A,也可以在dismissViewControllerAnimated:completion
上致电self.presentingViewController.presentingViewController
。如果一系列呈现视图控制器中的第一个视图控制器执行解雇,则会导致所有呈现的控制器被解除分配(假设您没有对其进行任何其他强引用)。