我的设置如下:我的Storyboard中有三个视图控制器场景,应用程序的工作流程来自 A - > B - > ç的。从场景 C 返回 A ,在Storyboard中设置了展开segue。后者我通过
以编程方式从 C 的视图控制器触发[self performSegueWithIdentifier:@"unwindFromCtoA" sender:self];
从 B转换 - > C 我使用UIViewControllerAnimatedTransitioning协议使用自定义("下拉")动画。从 C 展开时 - > A 我想要那个动画的反面。
这一切都完美无缺,直到我将iPhone 5更新为iOS 8.0.2(来自iOS 7)。现在,当展开形式 C - >时,不再触发(逆)动画。 A 的。相反,它不显示任何动画,它只是立即显示 A 。
在尝试找到问题的根源时,我用
替换了上面的performSegueWithIdentifier[self dismissViewControllerAnimated:YES completion:nil];
然后它会显示正确的动画。但很明显,在这种情况下我不会放松到 A 。这表明动画没有任何问题。似乎performSegueWithIdentifier并没有像在iOS 7中那样触发dismissViewControllerAnimated。
任何想法是什么原因导致iOS 8中的这种不同行为与iOS 7相比以及如何解决它?提前谢谢!