在 Swift 3中,我使用以下内容替换AppDelegate中BOLD到MEDIUM中的所有字体: UILabel.appearance().substituteFontNameBold = "HelveticaNeue-Medium" 并通过将此扩展添加到UILabel: extension UILabel { var substituteFontN
UILabel.appearance().substituteFontNameBold = "HelveticaNeue-Medium"
并通过将此扩展添加到UILabel:
extension UILabel { var substituteFontNameBold : String { get { return self.font.fontName } set { if self.font.fontName.contains("Bold") { self.font = UIFont(name: newValue, size: self.font.pointSize) } } } }
随着升级到Swift 4,我得到一个“致命的错误:在打开一个Optional值时意外发现nil”
if self.font.fontName.contains("Bold") {
如何继续使用Swift 4替换标签中BOLD到MEDIUM中的所有字体?
我找到了解决方法,你基本上必须添加@objc才能使它工作,添加后不再有nil值@objc public var substituteFontName : String