modalPresentationStyle

modalPresentationStyle

我需要做一个自定义的演示动画,当我同时设置这些setTransitioningDelegate和modalPresentationStyle = UIModalPresentationCustom时,

除非在呈现的viewcontroller中未调用viewDidAppear和viewDidDisappear,否则动画是完美的。这与https://developer.apple.com/library/ios/samplecode/LookInside/Introduction/Intro.html中的Apple示例代码相同

[overlay setTransitioningDelegate:[self transitioningDelegate]];
overlay.modalPresentationStyle=UIModalPresentationCustom;
[self presentViewController:overlay animated:YES completion:NULL];


当没有给出modalPresentationStyle时为什么调用这些方法?

最佳答案

这是正确的行为,因为呈现新的视图控制器仅隐藏呈现的视图控制器。当关闭呈现的视图控制器时,它不会将视图添加到层​​次结构中,当呈现的视图控制器被呈现时,它也不会从层次结构中移除呈现的视图控制器视图。

短篇故事;它隐藏了呈现视图控制器的视图,而不是将其删除。因此,不会调用这些方法。

10-08 06:51