码迷,mamicode.com
首页 > 其他好文 > 详细

设置view的圆角和阴影

时间:2016-11-12 19:07:18      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:pre   main   .sh   view圆角   pac   style   效果   bounds   mask   

1.设置view圆角

self.backView.clipsToBounds = YES;
self.backView.layer.cornerRadius = 6.f;

2.设置view阴影

    self.backView.layer.shadowColor = [UIColor blackColor].CGColor;//shadowColor阴影颜色
    self.backView.layer.shadowOffset = CGSizeMake(6,6);//shadowOffset阴影偏移,x向右偏移4,y向下偏移4,默认(0, -3),这个跟shadowRadius配合使用
    self.backView.layer.shadowOpacity = 0.5;//阴影透明度,默认0
    self.backView.layer.shadowRadius = 4;//阴影半径,默认3

  通过上面的方式设置阴影,必须把clipsToBounds关闭.

3.同时设置view的圆角和阴影

  如果上面的方法一起用,把masksToBounds开了,阴影无法显示,关了的话其上的View又会遮住圆角。解决的方式只能是再加一层layer。

    self.backView.backgroundColor = [UIColor whiteColor];
    self.backView.clipsToBounds = YES;
    self.backView.layer.cornerRadius = 6.f;
    //阴影效果
    CALayer *subLayer=[CALayer layer];
    CGRect fixframe=self.backView.layer.frame;
    fixframe.size.width=[UIScreen mainScreen].bounds.size.width-40;
    subLayer.frame=fixframe;
    subLayer.cornerRadius=6.f;
    subLayer.masksToBounds=NO;
    subLayer.shadowColor=[UIColor blackColor].CGColor;
    subLayer.shadowOffset=CGSizeMake(4,4);
    subLayer.shadowOpacity=0.8f;
    subLayer.shadowRadius=6.f;
    [self.backView.layer insertSublayer:subLayer below:self.backView.layer];

 

设置view的圆角和阴影

标签:pre   main   .sh   view圆角   pac   style   效果   bounds   mask   

原文地址:http://www.cnblogs.com/YaphetsDiao/p/6057068.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!