CALayer

2016-10-07  本文已影响13人  Tomboy_Anan

修改外观

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,把就会把超过根层以外的东西都给裁剪掉.

上一篇下一篇

猜你喜欢

热点阅读