📅  最后修改于: 2023-12-03 15:01:26.400000             🧑  作者: Mango
在iOS开发中,圆形按钮是非常常见的UI组件之一。在Swift语言中,实现圆形按钮也非常简单,下面介绍一种常用的实现方法。
创建一个Button类,继承于UIButton。在init方法中设置按钮的默认属性,包括圆形样式、边框线宽度、边框线颜色、正常状态下的背景色等,代码如下:
class Button: UIButton {
override init(frame: CGRect) {
super.init(frame: frame)
self.layer.cornerRadius = self.frame.size.width / 2
self.layer.borderWidth = 2
self.layer.borderColor = UIColor.white.cgColor
self.backgroundColor = UIColor.gray
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
在需要使用圆形按钮的地方,用Button类来创建按钮即可。例如:
let button = Button(frame: CGRect(x: 50, y: 50, width: 100, height: 100))
button.addTarget(self, action: #selector(buttonClicked), for: .touchUpInside)
self.view.addSubview(button)
class Button: UIButton {
override init(frame: CGRect) {
super.init(frame: frame)
self.layer.cornerRadius = self.frame.size.width / 2
self.layer.borderWidth = 2
self.layer.borderColor = UIColor.white.cgColor
self.backgroundColor = UIColor.gray
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let button = Button(frame: CGRect(x: 50, y: 50, width: 100, height: 100))
button.addTarget(self, action: #selector(buttonClicked), for: .touchUpInside)
self.view.addSubview(button)
}
@objc func buttonClicked(sender: Button!) {
print("Button Clicked")
}
}
通过继承UIButton类,实现圆形按钮相当简单。希望本篇文章对iOS开发者有所帮助。