zoukankan      html  css  js  c++  java
  • CATransition-转场动画

    CAAnimation的子类,用于做转场动画,能够为层提供移出屏幕和移入屏幕的动画效果。iOS比Mac OS X的转场动画效果少一点
    UINavigationController就是通过CATransition实现了将控制器的视图推入屏幕的动画效果
    属性解析:
    type:动画过渡类型
    subtype:动画过渡方向
    startProgress:动画起点(在整体动画的百分比)
    endProgress:动画终点(在整体动画的百分比)

    类型字符串

    效果说明

    关键字

    方向

    fade

    交叉淡化过渡

    YES

     

    push

    新视图把旧视图推出去

    YES

     

    moveIn

    新视图移到旧视图上面

    YES

     

    reveal

    将旧视图移开,显示下面的新视图

    YES

     

    cube

    立方体翻滚效果

       

    oglFlip

    上下左右翻转效果

       

    suckEffect

    收缩效果,如一块布被抽走

     

    NO

    rippleEffect

    水滴效果

     

    NO

    pageCurl

    向上翻页效果

       

    pageUnCurl

    向下翻页效果

       

    cameraIrisHollowOpen

    相机镜头打开效果

     

    NO

    cameraIrisHollowClose

    相机镜头关闭效果

     

    NO

     
     

    /* 过渡效果
     fade     //交叉淡化过渡(不支持过渡方向) kCATransitionFade
     push     //新视图把旧视图推出去  kCATransitionPush

     moveIn   //新视图移到旧视图上面   kCATransitionMoveIn
     reveal   //将旧视图移开,显示下面的新视图  kCATransitionReveal
     cube     //立方体翻滚效果
     oglFlip  //上下左右翻转效果
     suckEffect   //收缩效果,如一块布被抽走(不支持过渡方向)
     rippleEffect //滴水效果(不支持过渡方向)
     pageCurl     //向上翻页效果
     pageUnCurl   //向下翻页效果
     cameraIrisHollowOpen  //相机镜头打开效果(不支持过渡方向)
     cameraIrisHollowClose //相机镜头关上效果(不支持过渡方向)
    */
       
    /* 过渡方向
     kCATransitionFromRight
     kCATransitionFromLeft
     kCATransitionFromBottom

     kCATransitionFromTop*/

    •CATransition的使用

    CATransition *anim = [CATransition animation];

    anim.type = @“cube”; // 动画过渡类型

    anim.subtype = kCATransitionFromTop; // 动画过渡方向

    anim.duration = 1; // 动画持续1s

    // 代理,动画执行完毕后会调用delegate的animationDidStop:finished:

    anim.delegate = self;

    /*******中间穿插改变layer属性的代码**********/  

    [layer addAnimation:anim forKey:nil];

    使用UIView动画函数实现转场动画-- 单视图

    + (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
     
    参数说明:
    duration:动画的持续时间
    view:需要进行转场动画的视图
    options:转场动画的类型
    animations:将改变视图属性的代码放在这个block中
    completion:动画结束后,会自动调用这个block
     
    使用UIView动画函数实现转场动画——双视图
    + (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion;
     
    参数说明:
    duration:动画的持续时间
    options:转场动画的类型
    animations:将改变视图属性的代码放在这个block中
    completion:动画结束后,会自动调用这个block
  • 相关阅读:
    【BZOJ】2100: [Usaco2010 Dec]Apple Delivery(spfa+优化)
    【BZOJ】2101: [Usaco2010 Dec]Treasure Chest 藏宝箱(dp)
    【BZOJ】3404: [Usaco2009 Open]Cow Digit Game又见数字游戏(博弈论)
    【BZOJ】3403: [Usaco2009 Open]Cow Line 直线上的牛(模拟)
    【BZOJ】3402: [Usaco2009 Open]Hide and Seek 捉迷藏(spfa)
    【BZOJ】3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队(dp)
    【BZOJ】3399: [Usaco2009 Mar]Sand Castle城堡(贪心)
    【BZOJ】3392: [Usaco2005 Feb]Part Acquisition 交易(spfa)
    【BZOJ】2020: [Usaco2010 Jan]Buying Feed, II (dp)
    【BZOJ】2015: [Usaco2010 Feb]Chocolate Giving(spfa)
  • 原文地址:https://www.cnblogs.com/it-k-50/p/5840676.html
Copyright © 2011-2022 走看看