iOS | 为 xib 添加 UIFont 支持
2020-08-15 本文已影响0人
Lol刀妹
直接给 view 添加 UIFont
属性 xib 面板里是没有显示的,但是可以通过一些简单的手段让 xib 面板间接支持设置 UIFont
。
分析
UIFont
由两部分构成:name + size
let font = UIFont(name: "HelveticaNeue-Medium", size: 30)
xib 面板不支持 UIFont
,但支持 String
和 CGFloat
,因此我们可以给自定义 view 添加 fontName
和 fontSize
这两个属性:
@IBInspectable var fontName: String = "HelveticaNeue-Medium" {
didSet {
label.font = UIFont.init(name: fontName, size: fontSize)
}
}
@IBInspectable var fontSize: CGFloat = 12 {
didSet {
label.font = UIFont.init(name: fontName, size: fontSize)
}
}
通过对这两个属性赋值,达到修改 font 的效果。