iOS Swift如何为透明的UIView添加阴影
Posted
技术标签:
【中文标题】iOS Swift如何为透明的UIView添加阴影【英文标题】:iOS Swift how to add a shadow to a transparent UIView 【发布时间】:2017-10-22 03:51:58 【问题描述】:我使用 UIView 作为带有阴影的叠加层,但是一旦我将 UIView 背景颜色设置为 .clear,我就不再看到阴影,有没有办法为具有清晰背景颜色的 UIView 添加阴影?
【问题讨论】:
透明对象不投射阴影。尝试改用图片 有道理,我想出了另一种不使用透明 UIViews 的覆盖方法 @mding5692 你找到解决方案了吗?如果是这样,请发布您的解决方案,以便其他人将来可以使用它 请在这里找到我对这个问题的答案:***.com/a/56194429/8903877 【参考方案1】:是的,不透明度层小于 10 可以工作
@IBInspectable var shadowOffsetX : CGFloat = 0
@IBInspectable var shadowOffsetY : CGFloat = 0
@IBInspectable var shadowColor : UIColor?
didSet
self.layer.shadowColor = shadowColor?.cgColor
@IBInspectable var shadowOpacity : Float = 0
didSet
self.layer.shadowOpacity = shadowOpacity
@IBInspectable var shadowRadius : CGFloat = 0
didSet
self.layer.shadowRadius = shadowRadius
@IBInspectable var cornerRadius : CGFloat = 0
didSet
layer.cornerRadius = cornerRadius
layer.masksToBounds = true
@IBInspectable var borderWidth : CGFloat = 0
didSet
layer.borderWidth = borderWidth
@IBInspectable var borderColor : UIColor?
didSet
layer.borderColor = borderColor?.cgColor
@IBInspectable var layerOpacity : Float = 0
didSet
self.layer.opacity = layerOpacity
override func awakeFromNib()
super.awakeFromNib()
self.layer.shadowOffset = CGSize(width: shadowOffsetX, height: shadowOffsetY)
【讨论】:
请添加一些信息,说明您的答案为何正确或您做了什么以上是关于iOS Swift如何为透明的UIView添加阴影的主要内容,如果未能解决你的问题,请参考以下文章