iOS9 seems to ignore destination view controller's edgesForExtendedLayout
when implementing custom animation using UIViewControllerAnimatedTransitioning
, therefore the content ends up below the navigation bar. Any idea why this is happening?
I've hosted an example at https://github.com/nmarkovic04/CustomAnimationTest. Running it on 8.4 and 9.1 shows the difference but you can most likely try any other 8.x and 9.x version.
Running on XCode 7, Swift 2.0.
I know this is awful, but in viewDidLoad() i solved with this:
For me the problem comes out the first time my view controller is seen, when i rotate the device the problem is gone.
You have to setup proper toViewController's frame.
transitionContext.finalFrame(for:)
will help you. This is my animateTransition(using:) function for fade in/out animation. That one line setting up frame will also fix your shared project.this in ViewDidLoad fixes it can you confirm pls :]
self.edgesForExtendedLayout = .Top self.extendedLayoutIncludesOpaqueBars = true
Just setting this:
Resolved the issue for me.