【发布时间】:2020-05-26 22:37:53
【问题描述】:
我正在 UIView 的 draw rect 方法中创建自定义形状。这是一个箭头,它正在工作,但我无法添加阴影。我试图为 View 本身和图层添加阴影,但它不起作用。任何帮助将不胜感激。
import UIKit
class ArrowView: UIView {
override func draw(_ rect: CGRect) {
//Drawing Arrow
let path = UIBezierPath()
let edge:CGFloat = 20.0
path.move(to: CGPoint(x: 0.0, y: 0.0))
path.addLine(to: CGPoint(x: self.frame.width - edge, y: 0.0))
path.addLine(to: CGPoint(x: self.frame.width , y: self.frame.height/2))
path.addLine(to: CGPoint(x: self.frame.width - edge , y: self.frame.height))
path.addLine(to: CGPoint(x: 0, y: self.frame.height))
path.close()
let mask = CAShapeLayer()
mask.path = path.cgPath
layer.mask = mask
}
}
【问题讨论】:
-
“它不起作用”不是很有帮助。请详细说明您的意思。
-
@koen - 表示它没有显示阴影。我认为这很清楚。
标签: ios swift uiview uibezierpath