我试图改变一个UIButton的字体使用Swift…

myButton.font = UIFont(name: "...", 10)

然而.font已弃用,我不确定如何改变字体,否则。

有什么建议吗?


当前回答

您不需要强制打开titleLabel来设置它。

myButton.titleLabel ?。字体= UIFont(名称:YourfontName,大小:20)

因为你没有在这里使用titleLabel,你可以选择使用它,如果它是nil,它将只是一个无操作。

我还将添加其他人所说的,字体属性已弃用,并确保在设置标题文本时使用setTitle:forControlState:。

其他回答

这适用于Swift 3.0:

btn.titleLabel?.font = UIFont(name:"Times New Roman", size: 20) 

这对我很有用,谢谢。我想改变文本大小,而不是改变字体名称。

var fontSizeButtonBig:Int = 30

btnMenu9.titleLabel ?。font = .systemFont(ofSize: CGFloat(fontSizeButtonBig))

看看这里。

您应该设置按钮的titleLabel的字体。

myButton.titleLabel!.font = UIFont(name: "...", 10)

正如很多人在这里提到的,你可以设置字体如下:

button.titleLabel?.font = .systemFont(ofSize: 19.0, weight: .bold)

只要确保你的按钮有默认的样式就可以了,否则上面的内容会被系统忽略。

从文档中可以看到:

用于在按钮上显示文本的字体。(在iOS 3.0中已弃用。使用titleLabel的字体属性。)