在开始之前呢,先了解一下UIView和CALayer大体的区别(重点列举了以下四点):
•UIView 继承自 UIResponder,因此UIView 可以处理响应事件,而CALayer继承自NSObject,所以它只是负责内容的创建,绘制。
•UIView 负责对内容的管理,而CALayer则是对内容的绘制
•UIView 中有关位置的属性只有frame、bounds、center,而CALayer除了具备这些属性之外还有anchorPoint、position。
•通过修改CALayer可以实现UIView无法实现的很多高级功能
什么是Core Animation?
Core Animation为iOS的核心动画,它提供了一组丰富的API可以用于实现各种高级酷炫的动画效果。Core Animation 书与QuartzCore.framework框架。
Core Animation的特点:
•直接作用于CALayer图层上,并非UIView上。
•Core Animation的执行过程在后台执行,不阻塞主线程。
•可以使用CALayer绝大多数属性制作高级动画效果。
Core Animation中常用类的继承关系图:
•CAMediaTiming 有很多动画公共的属性:比如常见的duration(动画执行周期)、speed(速度)、repeatCount(重复次数)等一些公共的属性
•CAAnimation 主要用于实现动画的委托代理方法,比如动画开始事件和动画结束都是通过CAAnimation类实现的
•CAPropertyAnimation 属性动画,分为基础动画CABasicAnimation和关键帧动画CAKeyframeAnimation。
•CAAnimationGroup 组合动画,使用这个类可以把其他常用动画组合在一起
•CATransition 转场动画,主要用于视图控制器或者多个View之间的视图切换场景
以上这篇简单谈谈Core Animation 动画效果就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。
新闻热点
疑难解答