iOS 13系统字体是什么?

在iOS 13之前,我使用SFUIDisplay字体。
UIFont(name: ".SFUIDisplay-Light", size: UIFont.systemFontSize)
但是在iOS 13上它不起作用。

最佳答案

这个错误是BS。解决该问题的唯一方法是直接使用systemFont(ofSize:weight:)方法。再次,您无法使用UIFont(name:size:)方法获取系统字体,出于某些有趣的原因,您只会获取Times New Roman。苹果开发人员一定在和我们搞混。因此,对于上面的原始问题,您必须使用以下内容:

UIFont(systemFont:UIFont.systemFontSize, weight: .light)

就我的情况而言,我遇到了一个错误,该错误是对UIFont的扩展,以返回大小不同的相同字体,该字体必须与自定义字体和系统字体一起使用。为了使其能够在xcode 11 ios 13上运行,我必须添加一个愚蠢的检查以查看fontName是否包含“.SF”。
extension UIFont {
    func forSize(_ pointSize: CGFloat) -> UIFont {
        if !fontName.contains(".SF"), let font = UIFont(name: fontName, size: pointSize) {
            return font
        }

        return UIFont.systemFont(ofSize: pointSize, weight: weight)
    }
}

关于ios - iOS13的系统字体是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57766233/

10-12 05:39