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;
网友评论