什么是核心动画

Core Animation是一套包含图形绘制、投影、动画的Objective-C类集合,该框架包含在QuartzCore.framework中,它因为被用于处理更为强大的平滑的转场效果而引入OS X Leopard和iOS而出名。Core Animation和其它框架的位置关系如下图所示:

上图中的OpenGL ES是个C语言写的非常底层的图形处理框架,是个移动设备上绘制2D和3D计算机图形的标准开源库,广泛地被用在游戏的图形绘制上,负责直接驱动GPU,效率非常高,缺点是使用起来异常复杂。
  Core Animation是对OpenGL ES的Objective-C封装,具有与OpenGL ES几乎等价的高性能,却隐藏了OpenGL ES的复杂性。

2、核心动画类的层次结构


核心动画中可以直接使用的类有:

  CABasicAnimation
  CAKeyframeAnimation
  CAAnimationGroup
  CATransition
  CASpringAnimation

常用属性有:

  • duration : 动画的持续时间

  • beginTime : 动画的开始时间

  • repeatCount : 动画的重复次数

  • autoreverses : 执行的动画按照原动画返回执行

  • timingFunction : 控制动画的显示节奏系统提供五种值选择,分别是:
    kCAMediaTimingFunctionLinear 线性动画
    kCAMediaTimingFunctionEaseIn 先慢后快
    kCAMediaTimingFunctionEaseOut 先快后慢
    kCAMediaTimingFunctionEaseInEaseOut 先慢后快再慢
    kCAMediaTimingFunctionDefault 默认,

    网友评论