如何在ios swift中的uiview中左右两侧设置阴影?

问题描述:

我搜索更多的时间和应用很多建议,但无法解决我的问题。如何在ios swift中的uiview中左右两侧设置阴影?

我想要在左侧,右侧和底部的影子。但快速3影子偏移只提供高度或宽度。我发现类似的答案见下面的链接它显示阴影左上方右影。我想要左右两边。

  1. 见链接little similar answere

建议我的解决方案。 谢谢

这与提供的链接几乎是相同的任务,只需更改BezierPath即可。

let block1 = UIView(frame: CGRect.init(x: 50, y: 50, width: 300, height: 300)) 
block1.backgroundColor = UIColor.red 

block1.layer.masksToBounds = false 
block1.layer.shadowOffset = CGSize(width: 0.0, height: 0.0) 
block1.layer.shadowRadius = 5.0 
block1.layer.shadowOpacity = 0.7 

let path = UIBezierPath() 
path.move(to: CGPoint(x: 0.0, y: 0.0)) 
// Move to center between two top points instead of bottom 
path.addLine(to: CGPoint(x: block1.frame.size.width/2.0, y: block1.frame.size.height/2.0)) 
path.addLine(to: CGPoint(x: block1.frame.size.width, y: 0.0)) 
path.addLine(to: CGPoint(x: block1.frame.size.width, y: block1.frame.size.height)) 
path.addLine(to: CGPoint(x: 0.0, y: block1.frame.size.height)) 
path.close() 
block1.layer.shadowPath = path.cgPath