UIView设置阴影

2017-12-22  本文已影响137人  张麒麟

UIView设置阴影CALayer的属性:

shadowColor,

shadowOffset,

shadowOpacity,

shadowRadius,

shadowPath

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

//路径阴影
  UIBezierPath *path = [UIBezierPath bezierPath];  
  float width = _imageView1.bounds.size.width;
  float height = _imageView1.bounds.size.height;
  float  x = _imageView1.bounds.origin.x;
  float  y = _imageView1.bounds.origin.y;
  float addWH = 10;
  CGPoint topLeft = _imageView1.bounds.origin;  
  CGPoint topMiddle = CGPointMake(x+(width/2),y-addWH);  
  CGPoint topRight = CGPointMake(x+width,y);  
  CGPoint rightMiddle = CGPointMake(x+width+addWH,y+(height/2));  
  CGPoint bottomRight = CGPointMake(x+width,y+height);  
  CGPoint bottomMiddle = CGPointMake(x+(width/2),y+height+addWH);  
  CGPoint bottomLeft = CGPointMake(x,y+height);  
  CGPoint leftMiddle = CGPointMake(x-addWH,y+(height/2)); 
  [path moveToPoint:topLeft];                   
  //添加四个二元曲线
  [path addQuadCurveToPoint:topRight controlPoint:topMiddle];  
  [path addQuadCurveToPoint:bottomRight controlPoint:rightMiddle];     
  [path addQuadCurveToPoint:bottomLeft controlPoint:bottomMiddle];      
  [path addQuadCurveToPoint:topLeft controlPoint:leftMiddle];  
  //设置阴影路径
 _imageView1.layer.shadowPath = path.CGPath;
上一篇下一篇

猜你喜欢

热点阅读