这是一个常见的问题,对于仍然不知道如何处理的正确方法的每个人来说,这就是场景。
模态呈现的视图控制器A - > B - > ç
现在你想在一个平滑的动画登陆时用B解雇C来查看控制器A.所以苹果文档说你只需要执行:
[A dismissViewConttollerAnimated:YES completion:nil];
C和B应该很好地消失了。这实际上是经常需要的情况,我真的说和失望的是常见的用例不能正常工作。 Why the top view controller C disappears in a moment and B view controller appears with dismissing animation instead of C to be visible for the whole animation process?
我真的除了只看到C视图控制器的消失。
答案 0 :(得分:0)
在这种情况下使用的最佳解决方案是Unwind Segue。您可以直接将开关切换到层次结构中的任何视图控制器。
答案 1 :(得分:0)
B的解雇不能与解雇C同时进行。当两个动画以某种方式相关时,iOS中有时会发生这种情况 - 我不知道确切的细节。
如果在C的解雇完成块中放置断点,您可能会看到finished
参数为false
,表示C的动画已被中断。
我认为正确的解决方案是仅解雇B 。自B出现以来,C将自动消失。