如何设置弯曲视图的底部阴影

时间:2019-08-12 06:10:34

标签: ios swift dropshadow

我创建了一个从底部弯曲的视图。我必须在弯曲的路径下面放一个阴影。

func addBottomRoundedEdge(desiredCurve: CGFloat?) {
    let offset: CGFloat = self.frame.width / desiredCurve!
    let bounds: CGRect = self.bounds
    let rectBounds: CGRect = CGRect(x: bounds.origin.x, y: bounds.origin.y, width: bounds.size.width, height: bounds.size.height / 2)
    let rectPath: UIBezierPath = UIBezierPath(rect: rectBounds)
    let ovalBounds: CGRect = CGRect(x: bounds.origin.x - offset / 2, y: bounds.origin.y, width: bounds.size.width + offset, height: bounds.size.height)
    let ovalPath: UIBezierPath = UIBezierPath(ovalIn: ovalBounds)
    rectPath.append(ovalPath)

    let maskLayer: CAShapeLayer = CAShapeLayer()
    maskLayer.frame = bounds
    maskLayer.path = rectPath.cgPath
    self.layer.mask = maskLayer
}

0 个答案:

没有答案