前言:
本篇文章是iOS Animation 的阅读总结,其中去除了比较多的琐碎的解释,更多的是在大概知道Core Animation的情况下,作为一个进一步理解和当作工具书的一篇资料。
What is Animation?
相信你已经知道了,省略
Animation Basic
所有的动画都有一些基本属性:它们一定要和动画对象相关联,并且它们一定要定义动画以什么方式表现和动画的持续时间。
Animation Target Object
每个动画都必须和一个它将要影响的虚拟元素相关联。你可以把这个虚拟元素当作动画目标对象。
动画与其目标对象相关联,而其目标对象决定了动画的开始和结束。
Type of Animation
OS X 动画支持3种清楚的动画类型:基础动画,关键帧动画还有过度动画。
1、Basic Animation
基础动画开启一个过程:从一个初始数值,通过一系列的中间数值,再到达最终的数值,这个过程在一段时间内发生。
基础动画可以被任意可关联的类型所使用,包括:
- integers 和 doubles
- CGRect,CGPoint,CGSize,和CGAffineTransform结构体
- CATransform3D 数据结构
- CGColor 和CGImage引用
2、关键帧动画
和基础动画相像,但是它可以让你提供一个目标值的数组。每个数据都会被使用。关键帧动画支持的类型和基础动画一致。并且也需要动画在动画目标对象上的具体属性上表现。
3、过渡动画
定义了动画目标对象可用和消失时候的动画。过渡动画是使用了Core Image筛选器来表现的。
过渡动画是影响动画对象全部的,所以不需要定义某个类型。
Animation Timing
一个动画的时间信息被一些因素定义了:持续时间(duration),步长(pacing)和重复操作(repeating behavior)。
1、Duration
它是一个时间长度,来描述动画需要多久从开始或者当前状态去往目标状态,用秒来描述。
2、Pacing
描述在持续时间内的速度,是线性,还是先慢后快,还是先快后慢等。
3、Repeat
设置重复多少次或者设置重复的时间。