- 基于View的画图通过调用drawRect:方法在View自身进行重绘,由于这种方法使用CPU在主线程上实现所以效率很低。Core Animation通过在硬件上操作bitmap缓存来实现相似的方法。虽然Core Animation尽可能的使用缓存内容,你的app仍然需要提供初始的内容并需要不时的进行更新。
- layer并不是占据屏幕所有区域,只限于展示内容,比如一个图片裁剪时的矩形区域。其大小位置通过position,bound属性进行控制,虽然layer也有frame属性,但使用频率并不高。(position指的是layer区域的中心)
- Layer不会处理事件、绘制内容、参与响应链(responder chain)或者做其他更多的事儿,作为一个app至少要有一个view来处理这些交互。
- CALayer的属性transform用来指定layer和sublayer之间的变换;通常可以使用它来进行缩放、旋转以及改变位置等操作。属性sublayerTransform属性定义仅适用于sublayer的其他信息;通常用来增加scene内容透视效果图。
Souce:
iOS Developer Library