Я попытался создать функцию внутри пользовательского класса UIButton, чтобы добавить фигуру к существующей кнопке.
func drawStartButton(){
let shape = CAShapeLayer()
let path = UIBezierPath()
path.move(to: CGPoint(x: 0, y: 0))
path.addLine(to: CGPoint(x: 500, y: 0))
path.addLine(to: CGPoint(x: 500, y: -100))
path.addLine(to: CGPoint(x: 250, y: -50))
path.addLine(to: CGPoint(x: 0, y: -100))
path.addLine(to: CGPoint(x: 0, y: 0))
path.close()
shape.path = path.cgPath
shape.fillColor = redColor.cgColor
shape.frame = self.bounds
self.layer.addSublayer(shape)
}
Пока проблем нет ... НО, когда я добавляю слой к кнопке, слой, конечно, слишком большой! Как я могу "автоматически изменить размер" слоя к его кнопке? Я ожидал что-то вроде
shape.frame = self.bounds
... но путь по-прежнему остается того же размера, что и без self.bounds.