美文网首页
iOS7 Custom ViewController Trans

iOS7 Custom ViewController Trans

作者: laurence2100 | 来源:发表于2015-05-21 13:19 被阅读138次


    @interfaceBouncePresentAnimationController :NSObject

    - (NSTimeInterval)transitionDuration:

    (id)transitionContext {

    return2.0;

    }

    - (void)animateTransition:

    (id)transitionContext {

    1.获取toViewController ,通过transitionContextviewControllerForKey:UITransitionContextToViewControllerKey

    2.获取当animation 完成时,你展示下一个viewController显示的frame (可以自己定义frame,也可以通过参数finalFrameForViewController(方法):toViewController,获取toViewController的frame)

    3. obtain the container view

    UIView*containerView = [transitionContextcontainerView];

    4. 设置toViewController.view初始的位置 (把它的的位置放在屏幕下面,)

    5.[containerViewaddSubview:toViewController.view];

    6. 获取动画时间,通过第一个协议方法

    NSTimeIntervalduration =[selftransitionDuration:transitionContext];

    7.[UIViewanimateWithDuration:duration

    animations:^{ toViewController.view.frame= finalFrame; }completion:^(BOOLfinished) {

    [transitionContextcompleteTransition:YES];//inform the context of completion ,removes the from- view from the container

    }];

    }

    外面的ViewController调用上面的这个自定义的转场,

    1.让外面的ViewController遵循UIViewControllerTransitioningDelegate这个协议

    2.#import"BouncePresentAnimationController.h"

    3.@implementationMasterViewController {

    BouncePresentAnimationController*_bounceAnimationController;

    }

    4.初始化

    - (id)initWithCoder:(NSCoder*)aDecoder {

    if(self= [superinitWithCoder:aDecoder]) {

    _bounceAnimationController= [BouncePresentAnimationControllernew];

    }

    return self; }

    5.实现delegate

    - (id) animationControllerForPresentedController:

    (UIViewController*)presented presentingController:

    (UIViewController*)presenting sourceController: (UIViewController*)source {

    return_bounceAnimationController;

    }

    6.转场调用

    UIViewController*toVC = [UIViewController alloc]init];

    toVC.transitioningDelegate=self;

    self.navigation pushViewController - - - -];

    相关文章

      网友评论

          本文标题:iOS7 Custom ViewController Trans

          本文链接:https://www.haomeiwen.com/subject/majcxttx.html