UIViewControllerInteractiveTransitioning
A set of methods that enable an object (such as a navigation controller) to drive a view controller transition.
Declaration
@MainActor protocol UIViewControllerInteractiveTransitioning : NSObjectProtocolOverview
An interactive transition delegate (which is the term for an object that supports this protocol) can respond to touch events, or to time-varying programmatic input, by speeding up, slowing down, or even reversing the progress of a view controller transition. For example, an interactive transition on a navigation controller could respond to a swipe gesture by moving a view controller onto or off of the navigation stack.
To support an interactive view controller transition, you must also provide a transition animator delegate, which is a custom object that adopts the UIViewControllerAnimatedTransitioning protocol. The transition delegate and the transition animator can, if you wish, be defined within a single custom class, but the class must adopt both protocols.
If you instead want to provide a fixed-duration animated view controller transition — one that doesn’t support user interaction — use a transition animator delegate on its own. Refer to UIViewControllerAnimatedTransitioning.
For the methods you can call to retrieve view transition context information from within your startInteractiveTransition(_:) method, refer to UIViewControllerContextTransitioning.