Swift_动画


iOS学习笔记——动画基础  在学习动画之前,需要先明确几个基本概念,首先是图层和视图。 我们知道视图是有层级关系的,从UIWindow->UIView->SubView等 视图(UIView)的职责就是创建和管理图层(CALayer),视图是对图层的封装,真正在iPhone屏幕上面显示和做动画的其实都是视图所关联的图层。 视图和图层的关系是一一对应的

1、CALayer能做什么 

  • 图形阴影,边框,圆角等。

  • 仿射变换。

  • 3D变换。

  • 透明遮罩,多级非线性动画...

2、坐标系

ios 图像坐标系_iOS 各种坐标系对比

2.0、基础

UIKit - y轴向下

Core Graphics(Quartz) - y轴向上

OpenGL ES - y轴向上   Core Graphics(Quartz)一个基于2D的图形绘制引擎 而OpenGL ES是iPhone SDK的2D和3D绘制引擎,它使用左手坐标系,它的坐标系也是y轴向上的, 如果不考虑z轴,在二维下它的坐标系和Quartz是一样的。

2.1、在图层中也有frame,bounds,不同的是,图层没有视图中的center,而是多了个position。

2.2、三维坐标系

3、变换

3.1、仿射变换

通过设置UIView的transform属性可以实现图层的二维旋转,缩放以及平移,这一系列的变换归类为仿射变换,如图8所示就是多次复合变换,包括了旋转,缩放,平移。

3.2、3D变换

相关