一个动画怎么实现

来源:互联网 发布:淘宝会员名字大全 编辑:程序博客网 时间:2024/04/28 21:38

以转场动画为例:

1> 创建CATransition对象

    CATransition *animation = [CATransition animation];

2> 设置运动时间(即动画时间)

    animation.duration = DURATION;

 3> 设置运动type(类型)

    animation.type = type;

    if (subtype != nil) {  

   4> 设置子类 (和type配合使用, 指定运动的方向)

        animation.subtype = subtype;

    }

    5> 设置运动速度(动画的运动轨迹,用于变化起点和终点之间的插值计算,形象点说它决定了动画运行的节奏,比如是均匀变化(相同时间变化量相同)还是先快后慢,先慢后快还是先慢再快再慢)

    animation.timingFunction = UIViewAnimationOptionCurveEaseInOut;

   6> 将动画添加到view的Layer层

    [view.layer addAnimation:animation forKey:@"animation"];

动画类型如下:

typedef enum : NSUInteger {

    Fade = 1,                   //淡入淡出

    Push,                       //推挤

    Reveal,                     //揭开

    MoveIn,                     //覆盖

    Cube,                       //立方体

    SuckEffect,                 //吮吸

    OglFlip,                    //翻转

    RippleEffect,               //波纹

    PageCurl,                   //翻页

    PageUnCurl,                 //反翻页

    CameraIrisHollowOpen,       //开镜头

    CameraIrisHollowClose,      //关镜头

    CurlDown,                   //下翻页

    CurlUp,                     //上翻页

    FlipFromLeft,               //左翻转

    FlipFromRight,              //右翻转

} AnimationType;



0 0