iOS UI三板斧圆角加阴影

想必在日常的开发中大家都能遇到UI各种圆角加阴影的设计
添加圆角效果:

testView.layer.cornerRadius = 5;
testView.layer.masksToBounds = YES;

添加阴影效果:

testView.layer.shadowColor = theColor.CGColor
// 阴影偏移
testView.layer.shadowOffset = CGSizeMake(0,0)
// 阴影透明度
testView.layer.shadowOpacity = 0.5
// 阴影半径
testView.layer.shadowRadius = 2

需要圆角+阴影效果则不能满足,view.layer.masksToBounds会对图层进行裁剪,导致阴影效果失效.
解决方式:
添加一层中间view,在该view上进行阴影设置,在子view上进行圆角设置

//在AView上设置圆角
AView.layer.cornerRadius = 5;
AView.layer.masksToBounds = YES;
//在BView上设置阴影
BView.layer.shadowColor = theColor.CGColor
// 阴影偏移
BView.layer.shadowOffset = CGSizeMake(0,0)
// 阴影透明度
BView.layer.shadowOpacity = 0.5
// 阴影半径
BView.layer.shadowRadius = 2
//将AView上添加到BView上
[BView addSubView: AView]
[self.view addSubView: BView]

就可以愉快的实现圆角+阴影的效果了

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

推荐阅读更多精彩内容

  • 1 CALayer IOS SDK详解之CALayer(一) http://doc.okbase.net/Hell...
    Kevin_Junbaozi阅读 10,569评论 3 23
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 10,514评论 5 13
  • Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Laye...
    小猫仔阅读 9,204评论 1 4
  • 转载:http://www.jianshu.com/p/32fcadd12108 每个UIView有一个伙伴称为l...
    F麦子阅读 11,463评论 0 13
  • 每个UIView有一个伙伴称为layer,一个CALayer。UIView实际上并没有把自己画到屏幕上;它绘制本身...
    shenzhenboy阅读 8,295评论 0 17