我需要通过编程方式设置UIButton标题UILabel的字体大小。


当前回答

检查自定义字体名称是否添加了“目标成员资格”复选框。这应该会有所帮助。

其他回答

【按钮setFont:……已被弃用。

使用[按钮。titleLabel setFont:…而是,例如:

[myButton.titleLabel setFont:[UIFont systemFontOfSize:10]];

这可能会有帮助:

[objBtn.titleLabel setFont:[UIFont fontWithName:@“fontname” size:fontsize]];

支持UIButton中的辅助功能

extension UILabel
{
   func scaledFont(for font: UIFont) -> UIFont {
        if #available(iOS 11.0, *) {
            return UIFontMetrics.default.scaledFont(for: font)
        } else {
            return font.withSize(scaler * font.pointSize)
        }
    }
    func customFontScaleFactor(font : UIFont) {
        translatesAutoresizingMaskIntoConstraints = false

         self.adjustsFontForContentSizeCategory = true
         self.font = FontMetrics.scaledFont(for: font)
    }
}

你可以按钮字体现在。

UIButton().titleLabel?.customFontScaleFactor(font: UIFont.systemFont(ofSize: 12))

您还可以自定义按钮字体粗体,斜体。 本例采用系统粗体字体大小。

[LoginButton.titleLabel setFont:[UIFont boldSystemFontOfSize:15.0f*Ratio]];

迅速:

shareButton.titleLabel?.font = UIFont.systemFontOfSize(size)

重要注意事项: 删除由animuson♦12月5日14日16:48 animuson,在我发布这个答案一个月后,我现在也有同样的问题。我在谷歌上搜索,发现这篇文章不容易复制粘贴到一个快速的项目中。当我滚动看到我删除的答案,并复制它。所以请不要删除真正有用的东西。