UI视图相关重要知识点
传送带:
思考:
UIView 和 CALayer 之间的区别是什么?
我们还是先来看一幅图:
UIView里有一个CALayer类型的layer, 和一个backgroundColor;
backgroundColor 是对CALayer里一个同名方法的包装;
视图内容的显示是由CALayer里contents属性负责;
backing store是一个bitmap位图,最终我们显示在屏幕上的控件都可以理解为是位图。
总结一下,UIView 和 CALayer的区别:
- UIView为CALayer提供显示内容,负责处理touch等交互事件,参与响应链;
- CALayer 负责显示内容contents;
- 这体现了单一职责的设计原则;