交互式動畫相關類,協議

UIViewControllerTransitioningDelegate

Getting the Transition Animator Objects方法

- (id<UIViewControllerAnimatedTransitioning>)animationControllerForPresentedController:(UIViewController *)presented 
                                                                  presentingController:(UIViewController *)presenting 
                                                                      sourceController:(UIViewController *)source;
- (id<UIViewControllerAnimatedTransitioning>)animationControllerForDismissedController:(UIViewController *)dismissed;

Getting the Interactive Animator Objects方法

- (id<UIViewControllerInteractiveTransitioning>)interactionControllerForPresentation:(id<UIViewControllerAnimatedTransitioning>)animator;
- (id<UIViewControllerInteractiveTransitioning>)interactionControllerForDismissal:(id<UIViewControllerAnimatedTransitioning>)animator;


UIViewControllerAnimatedTransitioning協議(實現該協議的對象爲非交互轉場動畫)的方法如下:
(void)animateTransition:(id<UIViewControllerContextTransitioning>)transitionContext;//執行動畫

(void)animationEnded:(BOOL)transitionCompleted;//結束動畫

- (id<UIViewImplicitlyAnimating>)interruptibleAnimatorForTransition:(id<UIViewControllerContextTransitioning>)transitionContext;//返回被打斷動畫

UIPercentDrivenInteractiveTransition,交互式動畫協議的一個實現類,其中操作動畫的幾個方法如下:

- (void)updateInteractiveTransition:(CGFloat)percentComplete;//更新交互式動畫的完成比例

- (void)pauseInteractiveTransition;//停止動畫,當開始交互式動畫時,先調用停止當前動畫,再調用上面方法
- (void)cancelInteractiveTransition;//取消交互式動畫
- (void)finishInteractiveTransition;//結束交互式動畫

UIViewControllerInteractiveTransitioning,交互式轉場協議,我的理解只提供轉場交互方法,不提供專場本身功能。
轉場操作相關的方法如下:
- (void)startInteractiveTransition:(id<UIViewControllerContextTransitioning>)transitionContext;//當需要指定可交互的比例時調用,並開始動畫。
@property(nonatomic, readonly) BOOL wantsInteractiveStart;//指定動畫開始時,是否爲交互動畫
UIViewControllerContextTransitioning,轉場動畫Context
1. Accessing the transition objects
  containerView, viewControllerForKey, viewForKey
2. Getting the transition Frame Rectangles
    initialFrameForViewController, finalFrameForViewController
3. Getting the transition behaviors 
    animated, interactive, presentationStyle
4. Reporting the transition progress
    completeTransition:, updateInteractiveTransition,pauseInteractiveTransition,finishInteractiveTransition, cancelInteractiveTransition, transitionWasCancelled。
5.  Getting the Rotation Factor
    targetTransform






- (id<UIViewControllerAnimatedTransitioning>)animationControllerForPresentedController:(UIViewController *)presented 
                                                                  presentingController:(UIViewController *)presenting 
                                                                      sourceController:(UIViewController *)source;
- (id<UIViewControllerAnimatedTransitioning>)animationControllerForDismissedController:(UIViewController *)dismissed;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章