动画(二)

96
土鳖不土
2015.11.02 14:20* 字数 193

这期动画是对基础动画的一个小结。
动画的基本属性请看:iOS动画一

说到总结基础动画再总结下属性吧。
想要的动画的动画属性

typedef enum : NSUInteger {
    Fade = 1,                   //淡入淡出
    Push,                       //推挤
    Reveal,                     //揭开
    MoveIn,                     //覆盖
    Cube,                       //立方体
    SuckEffect,                 //吮吸
    OglFlip,                    //翻转
    RippleEffect,               //波纹
    PageCurl,                   //翻页
    PageUnCurl,                 //反翻页
    CameraIrisHollowOpen,       //开镜头
    CameraIrisHollowClose,      //关镜头
    CurlDown,                   //下翻页
    CurlUp,                     //上翻页
    FlipFromLeft,               //左翻转
    FlipFromRight,              //右翻转
    
} AnimationType;

动画顺序速率的快慢

 kCAMediaTimingFunctionLinear            线性,即匀速
 kCAMediaTimingFunctionEaseIn            先慢后快
 kCAMediaTimingFunctionEaseOut           先快后慢
 kCAMediaTimingFunctionEaseInEaseOut     先慢后快再慢
 kCAMediaTimingFunctionDefault           实际效果是动画中间比较快.

动画执行的方向

 kCATransitionFromLeft
 kCATransitionFromBottom;
 kCATransitionFromRight;
 kCATransitionFromTop;
屏幕快照 2015-11-02 13.34.33.png
#pragma CATransition动画剥离 传入一个1.过度动画类型和2.动画方向,还有要在3.哪个视图上显示。
- (void) transitionWithType:(NSString *) type WithSubtype:(NSString *) subtype ForView : (UIView *) view
{
    //创建CATransition对象
    CATransition *animation = [CATransition animation];
    
    //设置运动时间
    animation.duration = JFDURATION;
    
    //设置运动type
    animation.type = type;
    if (subtype != nil) {
        
        //设置子类
        animation.subtype = subtype;
    }
    
    //设置运动速度
    animation.timingFunction = UIViewAnimationOptionCurveEaseInOut;
    
    [view.layer addAnimation:animation forKey:@"animation"];
}

#pragma UIView实现动画
- (void) animationWithView : (UIView *)view WithAnimationTransition : (UIViewAnimationTransition) transition
{
    [UIView animateWithDuration:JFDURATION animations:^{
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        [UIView setAnimationTransition:transition forView:view cache:YES];
    }];
}
基础动画效果图.gif
2.gif

注本博文是参考一个小青玉伏案 的博友,在此感谢他的总结。


具体实现已经在源码里面解释的很清楚了,不懂的话可以直接评论或者私信。

希望您继续关注我哦。指出不足之处我会很开心。会尽快改正过来的。

动画(2)已经来了,动画(3)还会远吗?


源码地址链接:

点击下载源码

iOS-OC