CALayer

作者: Mustard_Buli | 来源:发表于2016-03-16 14:38 被阅读32次

    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);



    layer.anchorPoint = CGPointMake(0.5, 0.5);



    layer.anchorPoint = CGPointMake(1, 1);

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

    相关文章

      网友评论

          本文标题:CALayer

          本文链接:https://www.haomeiwen.com/subject/nfiqlttx.html