iOS CALayer基本属性

在iOS中, 基本上能看见的东西都是UIView, 比如一个普通的view , 一个button, 一个label. UIView之所以能显示在屏幕上, 是因为它有一个layer(图层)属性.
@property(nonatomic,readonly,strong) CALayer *layer;
// returns view's layer. Will always return a non-nil value. view is layer's delegate
一个UIVIew中总会存在至少一个layer, 这个view同时是layer的代理.
当UIView需要显示到屏幕上时,会将所有内容绘制在自己的layer层上,绘图完毕后,系统会将图层拷贝到屏幕上,于是就完成了UIView 的显示.总的来说就是layer负责显示内容, view负责内容的管理

CALayer *layer = self.redView.layer;
//设置阴影颜色
layer.shadowColor = [UIColor blueColor].CGColor;
//设置阴影的不透明度
layer.shadowOpacity = 1;
//偏移量
layer.shadowOffset = CGSizeMake(30, 30);
//模糊半径
layer.shadowRadius = 5;
//边框
layer.borderWidth = 5;
layer.borderColor = [UIColor greenColor].CGColor;
//设置圆角
layer.cornerRadius = 30;
//有点时候只设置了圆角, 并不会起作用. 这时候还需要设置maskToBounds属性, 把超过maks层(根层)以外的东西都给裁剪掉
layer.masksToBounds = YES;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,551评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,141评论 5 13
  • 转载:http://www.jianshu.com/p/32fcadd12108 每个UIView有一个伙伴称为l...
    F麦子阅读 6,288评论 0 13
  • 一、CAShapelayer 我们知道可以不使用图片情况下利用CGpath去构建任意形状的阴影。其实我们也可...
    小猫仔阅读 1,505评论 0 5
  • Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Laye...
    小猫仔阅读 3,775评论 1 4