1 - 基础概念

本文深入探讨了CoreAnimation作为复合引擎的角色,以及它如何通过图层树机制快速组合屏幕内容。详细阐述了视图与图层的关系,解释了为何iOS采用UIView和CALayer双层级结构,以及CALayer提供的独特功能,如阴影、3D变换等。
摘要由CSDN通过智能技术生成
什么是核心动画,做什么用的

Core Animation是一个复合引擎,它的职责就是尽可能快地组合屏幕上不同的可视内容,这个内容是
被分解成独立的图层,存储在一个叫做图层树的体系之中。于是这个树形成了UIKit以及在iOS应用程序当
中你所能在屏幕上看见的一切的基础。

 

视图与图层的关系

图层才是真正用来在屏幕上显示和做动画, UIView 是对它的一个封装,提供了一些iOS类似于处理触摸的具体功能,以及Core Animation底层方法的高级接口。

 

为什么iOS要基于 UIView 和 CALayer 提供两个平行的层级关系,为什么不用一个简单的层级来处理所有事情呢?

原因在于要做职责分离,这样也能避免很多重复代码。在iOS和Mac OS两个平台上,事件和用户交互有很多地方的不同, 基于多点触控的用户界面和基于鼠标键盘有着本质的区别,

这就是为什么iOS有 UIKit和 UIView ,但是Mac OS有AppKit和 NSView 的原因。他们功能上很相似,但是在实现上有着显著的区别。

绘图,布局和动画,相比之下就是类似Mac笔记本和桌面系列一样应用于iPhone 和iPad触屏的概念。把这种功能的逻辑分开并应用到独立的Core Animation框架,

苹果就能够在iOS和Mac OS之间共享代码,使得对苹果自己的OS开发团队和第三方开发者去开发两个平台的应用更加便捷。

 

那么CALayer有哪些UIView不具备的功能,需要深入到CALayer层

阴影,圆角,带颜色的边框
3D变换
非矩形范围
透明遮罩
多级非线性动画

 

转载于:https://www.cnblogs.com/Big-Ding/p/ji-chu-gai-nian.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值