/CustomPresentation

Simple application demonstrating a custom transition using UIViewPropertyAnimator

Primary LanguageSwiftMIT LicenseMIT

CustomPresentation

Swift License

This application demonstrates a custom presentation that coordinates between multiple animations using UIViewPropertyAnimator and view controller transition APIs.

The idea of coordinating multiple animations was explained in the Advance Animation with UIKit WWDC 2017 session 230. This application is implemented by referring to that approach.

Demo

demo

Overview

Controllers

  • Manages the presentation style
  • Adds custom views for presentaion
  • Inherits from UIPresentationController
  • Conforms to the UIViewControllerTransitioningDelegate protocol
  • Is responsible for creating the animations
  • Conforms to the UIViewControllerAnimatedTransitioning protocol
  • Drives the timing of custom animations using gesture recognizers
  • Inherits from UIPercentDrivenInteractiveTransition
  • Conforms to the UIViewControllerInteractiveTransitioning protocol

Animations

All transition animations are defined with transitionAnimators method of PresentationAnimatedTransitioning protocol. You can refer to the implementation of SecondViewController.

Author

Jiro @hedjirog

License

CustomPresentation is available under the MIT license. See the LICENSE file for more info.