| 版本 | 时间 |
|---|---|
| V1.0 | 2018.11.4 |
前言
正文
UIWindow
简介
UIWindow是一种特殊的UIView,通常在一个App只有一个UIWindow,但是在一些特殊的需求(比如:在App中需要全局的悬浮控件等)在App中也可以有多个UIWindow。
作用
- 作为容器,承载App程序所要现实的所有视图
- 传递触摸消息到其他的UIView或者其他的对象
- 还可以与UIViewController协同共奏,以便与完成设备方向旋转支持等
UIView
简介
UIView是在UIKit.framework中定义的,UIView继承于UIResponder,同时UIView是视图的基类。
作用
-
UIView继承于UIResponder,UIResponder是用来响应事件的,也就是UIView是用来响应事件的。 -
UIView属于UIKit.framework框架,负责渲染矩形区域的内容,为矩形区域添加动画,响应区域的触摸事件,还涉及布局和管理一个或多个子视图
CALayer
简介
CALayer包含在QuartzCore框架中,这是一个跨平台的框架,既可以用在iOS中又可以用在Mac OS X中。在使用Core Animation开发动画的本质就是将CALayer中的内容转化为位图从而供硬件操作,所以要熟练掌握动画操作必须先来熟悉CALayer。
作用
-
CALayer是承载绘制内容的对象 -
CALayer可以用来实现动画效果
总结
区别联系
UIWindow是UIView的子类,UIWindow承载UIView的显示,UIView的显示又依赖于CALayer的绘制,但是这仅仅是显示的关系,但是当程序要完成事件的响应的话,需要UIWindow将事件传递给UIView进行响应,CALayer是不具有响应功能的。同时CALayer负责一些动画的完成。








网友评论