CALayer

作者: Tomboy_Anan | 来源:发表于2016-10-07 18:37 被阅读13次

    修改外观

    1.阴影

    2.边框

    3.圆角

    4.用layer操作UIImageView,修改外观

    1.CALayer简介

    CALayer我们 称它叫做层. 在每个UIView内部都有 个layer这样 个属性. UIView之所以能够显 ,就是因为它  有这个 个层,才具有显 的功能. 我们通过操作CALayer对象,可以很 便地调整UIView的 些外观属性. 可以给UIView设置阴影,圆 ,边框等等

    2.操作layer改变UIView外观

    // 把UIKit转换成CoreGraphics框架CG开头

    // 1.阴影

    // 设置阴影必须要修改他的不透明度

    // 默认图层是有阴影的,只不过是透明的

    self.redView.layer.shadowOpacity = 1;

    self.redView.layer.shadowOffset = CGSizeMake(10, 10);

    self.redView.layer.shadowColor = [UIColor yellowColor].CGColor;

    // 设置阴影的圆角

    self.redView.layer.shadowRadius = 10;

    // 2.边框

    // 设置边框必须要修改他的边框宽度,边框宽度默认是0

    // 在图层中使CoreGraphics的CGColorRef

    self.redView.layer.borderWidth = 10;

    self.redView.layer.borderColor = [UIColor blueColor].CGColor;

    // 3.圆角

    // 设置图层的圆角半径,圆的半径为宽度的一半,就是一个圆

    self.redView.layer.cornerRadius = 50;

    3.操作layer改变UIImageView的外观

    // masksToBounds 是否需要剪切子层(除去根层以外的东西)

    self.imageV.layer.masksToBounds = YES;

    self.imageV.clipsToBounds = YES;

    // contents内容层,imageView存放在这里

    NSLog(@"%@",self.imageV.layer.contents);

    // 注意:UIImageView当中Image并不是直接添加在层上的.这是添加在layer当中的contents层上,我们设置层的所有属性它只作用在跟层上,对contents层的东西并不起作用.所以我们看不到图片有圆角的效果.想要让图片有圆角的效果.可以把masksToBounds这个属性设为YES,当设为YES,把就会把超过根层以外的东西都给裁剪掉.

    相关文章

      网友评论

          本文标题:CALayer

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