CALayer

CALayer是UIView可以响应事件。一般来说,layer可以有两种用途:一是对view相关属性的设置,包括圆角、阴影、边框等参数;二是实现对view的动画操控。
因此对一个view进行core animation动画,本质上是对该view的.layer进行动画操纵。
1.CALayer常见属性

 //新建图层
 CALayer \* layer = [CALayer layer];
 //图层颜色
 layer.backgroundColor = [UIColor redColor].CGColor;
 //图层大小
 layer.bounds = CGRectMake(0, 0, 100, 100);
 //图层锚点
 layer.anchorPoint = CGPointMake(0, 0);
 //图层位置
 layer.position = self.view.center;
 //圆角半径
 layer.cornerRadius = 50; 
 //边框宽度
 layer.borderWidth = 2;
 //边框颜色
 layer.borderColor = [UIColor blackColor].CGColor;
 //添加图层
 [self.view.layer addSublayer:layer];

2.CALayer有2个非常重要的属性:position和anchorPoint
@property CGPoint position;
用来设置CALayer在父层中的位置
以父层的左上角为原点(0, 0)
@property CGPoint anchorPoint;
称为“定位点”、“锚点”
决定着CALayer身上的哪个点会在position属性所指的位置
以自己的左上角为原点(0, 0)
它的x、y取值范围都是0~1,默认值为(0.5, 0.5)
layer.anchorPoint = CGPointMake(0, 0);


CALayer_第1张图片

layer.anchorPoint = CGPointMake(0.5, 0.5);


CALayer_第2张图片

layer.anchorPoint = CGPointMake(1, 1);
CALayer_第3张图片

P.S. 这里有一篇非常好的文章来全面的了解CALayer:https://zsisme.gitbooks.io/ios-/content/chapter1/the-layer-tree.html

你可能感兴趣的:(CALayer)