快速设置全局字体

时间:2020-04-18 12:18:21

标签: swift

我在设置自定义字体的地方创建扩展名

extension UILabel {
    var substituteFontName : String {
        get { return self.font.fontName }
        set {
              self.font = UIFont(name: newValue, size: self.font.pointSize)
        }
    }
}

但是我有一个问题:我收到一个错误Unexpectedly found nil while unwrapping an Optional value,但是如果我这样设置静态尺寸

self.font = UIFont(name: newValue, size: 13)

我没有收到错误,字体正在更改。如何准确设置自动设置的尺寸

1 个答案:

答案 0 :(得分:0)

font属性实际上是隐式解包的UIFont!,因此您应该将set更改为:

self.font = UIFont(name: newValue, size: self.font?.pointSize ?? UIFont.labelFontSize)