个人关于CALayer的一些总结 拿出来和大家分享下 希望能对大家有些帮助 不足欠缺的地方希望各路大神多多帮助补充完善
首先先来说一下CALayer和UIView的关系吧
其实CALayer就是将视图中的内容和动画显示出来 而UIView是用来和用户交互的 比如响应事件等等
其实 UIView本身不具备显示的功能,是它内
部的Layer层才有显示功能
在创建UIView的时候,会自动创建一个图层,我们可以通过UIview的layer属性访问这个这个图层
再CALayer中 position 和 anchorPoint这两个属性特别常用 相对来说很重要 所以希望下面这张图片可以帮助大家更好的理解
假设红色图层的position是[100,100] 而anchorPoint是[0,0]
这样的话 就是红色图层的零点在绿色图层的[100,100]位置上
接下来 看一下CALayer中的一些其他属性
@property CGRect bounds;(宽度和高度)
@property CGPoint position;(Layer在父控件上位置))
@property CGPoint anchorPoint;(锚点(x,y的范围都是0-1),决定了空间自身的哪个点在指定的position上)
@property CGColorRef backgroundColor;(背景颜色)
@property CATransform3D transform;(形变属性)
@property CGColorRef borderColor;(边框颜色)
@property CGFloat borderWidth;(边框宽度)
@property CGFloat cornerRadius;(圆角半径)
@property(retain) id contents;(内容(比如设置为图片CGImageRef))