美文网首页
Core Animation编程指南

Core Animation编程指南

作者: 小DB | 来源:发表于2018-03-11 20:34 被阅读0次

关于Core Animation我们应该知道什么

Core Animation 是iOS 和OS X平台上进行图形渲染和动画的基础设施,设置简单的参数 Core Animation就能做出相应的动画效果,Core Animation 本身不是绘图系统,而是通过在硬件上合成和操作应用的内容,将大部分的图形渲染和动画操作交给图形硬件处理。

动画是什么?

简单来说就是,一个动画对象基于时间变化的过程,比如一个物体从一种状态变成另一种状态,这种状态的变化可能包括大小、角度、形状、颜色等,都可以看作是一次动画的过程,这个过程涉及到两个方面:1.动画的执行对象-CALayer,具体的动画过程-Animation。

在一个App上,我们看到的视图、界面都是UIView和UIView的子类,但是我们之所以能够看到这些内容,是因为每个视图有一个CALayer图层,我们对于View的操作,像frame,color,image等其实都是直接操作在Layer上,Layer只负责界面的展示,不具备与交互和响应事件的能力,View可以作为Layer的delegate去响应这些交互,我们可以将Layer看成一个数据模型,包含了Layer 的各种属性,这些属性包括:颜色,大小,位置等,而Animation则包含了动画的时间,变化的速度,变化关键状态等,Animation直接操作于Layer,进行渲染和动画,Layer预留了接口,为自己添加Animation。

CALayer的渲染架构

CALayer和UIView一样也有层级树状结构,叫做图层树,我们从视图获取的或者自己创建的用于显示的图层树叫做模型树(la yer.modelLayer),模型树还有两个复制图层,叫做呈现树(layer. presentationLayer)和渲染树,当我们修改Layer的属性,修改的是模型树的属性值,从旧值变成新值,而呈现树的属性值是和我们看到的动画过程一致的,渲染树则是对呈现树的数据进行渲染,是真正的动画过程,并且是不公开的。

参考链接:http://www.cnblogs.com/xdream86/p/3250782.html

相关文章

网友评论

      本文标题:Core Animation编程指南

      本文链接:https://www.haomeiwen.com/subject/pqowfftx.html