首页 > 代码库 > IOS学习--核心动画

IOS学习--核心动画

1.CoreAnimation的介绍

 

Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍。也就是说,使用少量的代码就可以实现非常强大的功能。
Core Animation可以用在Mac OS X和iOS平台。
Core Animation的动画执行过程都是在后台操作的,不会阻塞主线程。

 要注意的是,Core Animation是直接作用在CALayer上的,并非UIView

详细地址:http://www.cnblogs.com/mjios/archive/2013/04/15/3021039.html

2.CoreaAnimation的使用步骤

 

1>在xcode5之前使用它需要先添加QuartzCore.framework框架和引入主头文件<QuartzCore/QuartzCore.h>

2>初始化一个CAAnimation对象,并设置一些动画相关属性

3>通过调用CALayer的addAnimation:forKey:方法增加CAAnimation对象到CALayer中,这样就能开始执行动画了

4>通过调用CALayer的removeAnimationForKey:方法可以停止CALayer中的动画

执行动画的本质其实就是改变图层Layer的属性,CoreAnimation是直接作用在CALayer上的。使用核心动画的具体步骤

1>创建CALayer

2>touchbegin,点击屏幕,做动画

3>怎么执行动画呢?执行动画的本质就是改变图层的属性

4>告诉动画执行怎样的动画?设置动画属性(position)

5>告诉动画属性怎么改变?设置动画属性值改变toValue fromValue

6>duration:动画时长

动画有反弹?取消反弹

(1)执行动画完毕不要移除

(2)设置动画填充模式,保持最新的位置

一些常用到的动画属性:

1>duration:动画属性

2>repeatCount:重复次数
3>timingFunction:控制动画的执行节奏

  • kCAMediaTimingFunctionLinear(线性):匀速,给你一个相对静态的感觉
  • kCAMediaTimingFunctionEaseIn(渐进):动画缓慢进入,然后加速离开
  • kCAMediaTimingFunctionEaseOut(渐出):动画全速进入,然后减速的到达目的地
  • kCAMediaTimingFunctionEaseInEaseOut(渐进渐出):动画缓慢的进入,中间加速,然后减速的到达目的地。这个是默认的动画行为。

4>动画代理:监听动画过程


3.CALayer的简介

 

 

 

 

 

IOS学习--核心动画