制作自定义形状按钮-迅捷

时间:2018-11-09 12:09:00

标签: ios swift

如何以编程方式创建自定义UIButton(如平行四边形或菱形)并更改按钮大小的每一侧?

按钮应该像这些菱形(也许是平行四边形):

enter image description here

1 个答案:

答案 0 :(得分:1)

实际上,有很多方法可以创建自定义控件,例如按钮,滑块,开关等。有关更多详细信息,请遵循Tutorial

示例:

let customButton = UIButton(frame: CGRect(x: 100.0, y: 100.0, width: 200.0, height: 140.0))
customButton.backgroundColor = UIColor.clear

let aPath = UIBezierPath()

aPath.move(to: CGPoint(x: 100.0, y: 0.0))

aPath.addLine(to: CGPoint(x: 200.0, y: 40.0))
aPath.addLine(to: CGPoint(x: 160, y: 140))
aPath.addLine(to: CGPoint(x: 40.0, y: 140))
aPath.addLine(to: CGPoint(x: 0.0, y: 40.0))

aPath.close()

let layer = CAShapeLayer()
layer.fillColor = UIColor.red.cgColor
layer.strokeColor = UIColor.red.cgColor
layer.path = aPath.cgPath

customButton.layer.addSublayer(layer)

self.view.addSubview(customButton)

来源:UIBezierPath默认具有更多形状,您也可以自定义形状。