矩形周围的阴影实现
Posted
技术标签:
【中文标题】矩形周围的阴影实现【英文标题】:Shadow Implementation around a Rectangle 【发布时间】:2018-08-10 10:53:28 【问题描述】:我正在尝试在自定义 UIButton 周围创建阴影。但我面临的问题是按钮标题也有阴影,这是我不想要的。 如何避免按钮标题周围出现阴影,只在角落有阴影。
我现在的代码是:
self.layer.shadowColor = [UIColor.redColor CGColor];
self.layer.shadowOpacity = 0.75;
self.layer.shadowRadius = 5;
//self.layer.shadowPath = CGPathCreateWithRect(self.bounds, NULL);
self.layer.shadowOffset = CGSizeMake(0, 0);
我认为这与 shadowPath 属性有关,但不完全确定。现在,它看起来像这样。
我也尝试使用 setTitleShadowColor 属性为零,但没有帮助。
【问题讨论】:
我还想补充一点:这个 UIButton 是另一个视图的子视图。我正在尝试将阴影分配给按钮的父视图。不知何故,阴影规范也被应用到了按钮上,这需要被阻止 【参考方案1】:试试这个代码。您可以对 UIView 使用相同的代码 :-) Swift 4
btn.layer.shadowColor = #colorLiteral(red: 0.4392156899, green: 0.01176470611, blue: 0.1921568662, alpha: 1)
btn.layer.shadowOffset = CGSize(width: 0, height: 0)
btn.backgroundColor = #colorLiteral(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0)
btn.layer.shadowRadius = 5
let shadowPath = UIBezierPath(roundedRect: btn.bounds, cornerRadius: 0)
btn.layer.shadowPath = shadowPath.cgPath
btn.layer.shadowOpacity = 1
必须让我知道它是否适合你。
【讨论】:
以上是关于矩形周围的阴影实现的主要内容,如果未能解决你的问题,请参考以下文章