核心动画的学习建议
1、 API的熟练调用
2、 把复杂动画进行拆分几个简单动画的组合
3、 具备一定的三角函数的计算能力,例如角度转弧度,弧度转角度,反三角函数的计算等等
4、其实学习核心动画可以做的事情有很多,做动画仅仅是他的冰山一角而已,还可以做图形的绘制,投影等等
核心动画的技术架构
在2015年之前,Core Animation的底层直接是openGL ES,2015年之后就封装成了Metal,OpenGL ES是一个专门用来处理图形的框架,其实说白了动画的处理就是处理图形的变化,就是因为OpenGL ES过于复杂,所以苹果才把他封装起来,简化了图形API,让开发者可以更加方便的实现动画,Core Animation的一些矩阵,反射变化的原理就是来源于OpenGL ES和OpenGL
核心动画的组成结构
. 包括两大部分:动画和图层
. 到后面讲到的所有复杂动画都是需要用不同的图层个动画结合使用
知识点1 图层CALayer个UIView是什么关系?
CALayer是UIView的渲染显示,但是CALayer不能处理响应事件,UIView可以处理响应事件。
苹果这样子设计的原因是CALayer是mac系统个iOS系统都共用的,但是点击事件在两个系统里面是不一样的,为了有更好的兼容性,所以就把渲染显示和点击事件做了拆分。也由此结论可以知道所有的动画处理都是作用于CALayer,而不是UIView