📜  ios 圆形按钮 - Swift (1)

📅  最后修改于: 2023-12-03 15:01:26.400000             🧑  作者: Mango

iOS圆形按钮 - Swift

在iOS开发中,圆形按钮是非常常见的UI组件之一。在Swift语言中,实现圆形按钮也非常简单,下面介绍一种常用的实现方法。

步骤一:创建Button类

创建一个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类

在需要使用圆形按钮的地方,用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开发者有所帮助。