【发布时间】:2016-09-30 18:19:10
【问题描述】:
我正在制作一个我想要遮罩并为其添加阴影的自定义视图。
掩蔽:
let p = UIBezierPath()
p.moveToPoint(CGPointMake(20, 20))
p.addLineToPoint(CGPointMake(100, 20))
p.addLineToPoint(CGPointMake(100, 50))
p.addLineToPoint(CGPointMake(110, 55))
p.addLineToPoint(CGPointMake(100, 60))
p.addLineToPoint(CGPointMake(100, 100))
p.addLineToPoint(CGPointMake(20, 100))
p.closePath()
let s = CAShapeLayer()
s.frame = layer.bounds
s.path = p.CGPath
s.fillColor = UIColor.greenColor().CGColor
layer.mask = s
掩蔽工作,现在我想添加一个阴影。 但它不起作用。
我尝试在主图层上添加阴影,但没有任何反应。
layer.shadowColor = UIColor.yellowColor().CGColor
layer.shadowRadius = 10
layer.shadowOpacity = 0.9
layer.shadowOffset = CGSizeZero
我尝试将它添加到遮罩层,但我得到了用阴影遮罩的主视图。
s.shadowColor = UIColor.yellowColor().CGColor
s.shadowRadius = 10
s.shadowOpacity = 0.9
s.shadowOffset = CGSizeZero
任何建议如何将此黄色阴影添加到蒙版视图?
谢谢
【问题讨论】:
-
确保您的视图没有零帧
-
它没有,我可以看到视图但没有阴影
-
你真的想要一个遮罩而不是一个子层吗?
-
@WilsonXJ 我将其更改为 addSubLayer 并且它可以工作,但现在我的形状是黑色的。而且我的颜色没有改变
-
你可以放一张图片并描述你想要的效果
标签: ios swift uiview calayer cashapelayer