label.font.pointSize是只读的,所以我不确定如何更改它。


当前回答

斯威夫特3.1

import UIKit

extension UILabel {
    var fontSize: CGFloat {
        get {
            return self.font.pointSize
        }
        set {
            self.font =  UIFont(name: self.font.fontName, size: newValue)!
            self.sizeToFit()
        }
    }
}

其他回答

在Swift 3中:

label = UIFont.systemFont(ofSize: 20)

并使用系统预设的大小,例如:

label = UIFont.systemFont(ofSize: UIFont.smallSystemFontSize)

斯威夫特4:

label.font = UIFont("your font name", size: 15)

另外,如果你想在项目中的所有视图中设置标签字体,请尝试在appDelegate>didFinishLaunch中执行此操作: UILabel.appearance()。font = UIFont("你的字体名称",字号:15)

斯威夫特3.1

标签。font = Label.font.withSize(新值)

label.font = UIFont.systemFontOfSize(20)

你可以这样做:

label.font = UIFont(name: label.font.fontName, size: 20)

或者像这样:

label.font = label.font.withSize(20)

这将使用相同的字体。20当然可以是你想要的任何尺寸。

注意:后一个选项将覆盖当前的字体粗细为常规,所以如果你想保留字体粗细使用第一个选项。

Swift 3更新:

label.font = label.font.withSize(20)

Swift 4更新:

label.font = label.font.withSize(20)

or

label.font = UIFont(name:"fontname", size: 20.0)

如果你使用系统字体

label.font = UIFont.systemFont(ofSize: 20.0)
label.font = UIFont.boldSystemFont(ofSize: 20.0)
label.font = UIFont.italicSystemFont(ofSize: 20.0)