根据选择状态更改Uibutton字体大小

时间:2019-01-09 12:12:42

标签: ios swift uibutton

我知道我们可以通过以下语句来设置字体大小。

button.titleLabel?.font = UIFont.boldSystemFont(ofSize: 16)

button.setBackgroundColor(color: UIColor.white, forState: .selected)
button.setBackgroundColor(color: UIColor.clear, forState: .normal)

我已经设置了背景色。

反正我可以对字体大小做同样的事情。

问题是我有多个按钮,想知道这种方法是否可行。

3 个答案:

答案 0 :(得分:1)

当然。致电setAttributedTitle(_:for:)以获取您的不同状态。属性标题包括字体和大小信息

答案 1 :(得分:0)

没有更改UIButton字体的特定方法或属性。但是,我们可以按如下所示的按钮操作方法进行更改。

@IBAction func buttonTapped(_ sender: UIButton) {
    if sender.isSelected {
        sender.titleLabel.font = UIFont(name: "SELECT_FONT", size: "SELECT_FONT_SIZE")
    } else {
        sender.titleLabel.font = UIFont(name: "YOUR_FONT", size: "FONT_SIZE")
    }
}

答案 2 :(得分:0)

我通常有一种非常“怪异”的方式,即在UIButton内添加UILabel,因为UIButton继承自UIView,因此您可以轻松地使用配置的字体在内部添加UILabel,这是您唯一需要的对齐,但是您可以轻松地对此使用锚点。会像魅力一样工作,您甚至可以为此扩展创建

extension: UIButton {
    func addCustomFont() {
        // Implementation, like self.addSubview( < UILabel >)
    }
}