1.Core Animation是什么?
Core Animation中文翻译为核心动画,是一组非常强大的动画处理API,它可以适用于Mac OS X和iOS平台。
2.使用Core Animation需要注意的地方
<1>Core Animation的动画执行过程都是在后台执行的,不会阻塞主线程。
<2>Core Animation是作用到CALayer上面的,要把动画对象添加到CALayer对象上,添加完毕之后会自动立即执行动画效果
<3>核心动画的本质是在后台移动图层中的内容,执行完毕后图层本身的位置并没有发生变化。
<4>默认的动画时间为0.25s
3.在 Core Animation中动画使用的基本步骤
<1>创建动画对象:调用CAAnimation的子类创建动画对象
<2>设置动画对象属性:比如动画时间、动画完毕后是否移除等
<3>把动画对象添加到某个CALayer对象上面:CALayer的addAnimationForKey:方法添加动画对象到某个layer上面,添加完毕之后动画就开始执行
<4>停止动画:CALayer的removeAnimationForKey:方法
4.CAAnimation的简单介绍
CAAnimation是所有动画对象的父类,负责动画的持续时间和速度,是个抽象类,不能直接使用,应该使用它的子类。
5.CAAnimation常用属性的介绍
提示:前5个属性在CAMediaTiming协议中,CAAnimation遵守CAMediaTiming协议
<1>duration:动画的持续时间
<2>repeatCount:动画的重复次数
<3>repeatDuration:动画的重复时间
<4>fillMode:决定当前对象在非active时间段的行为,比如动画结束之后和动画结束之前
<5>beginTime:可以设置动画延迟时间,如果想要延迟2s,beginTime = CACurrentMediaTime()+2;CACurrentMediaTime()是图层的当前时间
<6>removedOnCompletion:默认为YES,代表动画执行结束之后立即从图层上面移除,图形恢复到原来的状态,如果想要图形保持动画执行之后的状态,应该将此参数设置为NO,同时还要设置fillMode为kCAFillModeForwards
<7>timingFunction:速度控制函数,控制动画执行的节奏
<8>delegate:动画的代理
6.CAAnimation的继承结构

网友评论