前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《Motion Design for iOS》(十六)

《Motion Design for iOS》(十六)

作者头像
Cloudox
修改2021-11-23 13:07:40
2560
修改2021-11-23 13:07:40
举报
文章被收录于专栏:月亮与二进制月亮与二进制

Core Animation是一个动画和图形合成框架,用于提高速度和效率。虽然在名字中有动画的单词,不要让它误导你以为它只能做这个;它实际上负责屏幕上显示的所有视图的整体渲染体系结构,可以非常快速地进行透明度计算、图像过滤和视觉效果。它是为iOS创造的,但从OS X10.5开始,也可以在Mac上应用。

要通过GPU管理渲染在屏幕上的图像内容,Core Animation使用CALayer对象作为主力。CALayer负责界面渲染,实际上,UIView对象只是CALayer的简单封装,而Core Animation在苹果公司内部最初名为Layer Kit!当你在屏幕上操作一个UIView的布局或方向的时候,你实际上在移动它的CALayer。Core Animation在硬件层面管理合成并操作你app的界面内容,与显卡对话并精简你界面的渲染,让它变得快速而不迟缓。iOS中所有的动画性能都是由Core Animation框架实现的。

图层可以像视图一样被层级安排来在屏幕上创建一个完整的用户界面。你不是非得要用UIView对象来构建你的界面,也可以使用CALayer对象来代替,像视图一样将它们按照父视图-子视图的类型放置,只不过替换成父图层-子图层。

虽然你可以只是用CALayer不用视图来实现一个app的界面,大部分的iOS开发者仍然都会使用UIView对象而不是直接使用CALayer对象来构建app界面,除非他们在做一些严肃的图形处理或者一次性布局成百上千的图形。如果你需要直接更改图层属性的话随时都可以获取一个视图的图层,比如说,设置一个视图的圆角弧度就是通过操作视图的CALayer属性来完成的。

查看完整合集:https://github.com/Cloudox/Motion-Design-for-iOS

查看作者首页

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017/11/20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档