I am trying to create a segue/transition between two View Controllers that \"slides\" to the next View Controller. What I mean by \"slide\" is that it only moves as much as the
That effect is achieved using custom interactive transitions, which were introduced in iOS7. Here are a few tutorials to check out:
When I was implementing this I found that, for reusability, it was best to have one subclass of UIPercentDrivenInteractiveTransition
(which we'll call TransitionManager
) that implemented the protocols UIViewControllerTransitioningDelegate
, UINavigationControllerDelegate
and UIViewControllerAnimatedTransitioning
.
- Then, if you need to present a UIViewController
modally with your custom transition: in prepareForSegue
set:
destinationViewController.modalPresentationStyle = .Custom
destinationViewController.transitioningDelegate = TransitionManager()
- If you're using a UINavigationController
it's even easier, all you need to do it set the UINavigationController
's delegate
to your TransitionManager
.
Hopefully that should start to make some sense once you've gone through the tutorials.