static func preferredFont(forTextStyle style: TextStyle, weight: Weight) -> UIFont {
let metrics = UIFontMetrics(forTextStyle: style)
let desc = UIFontDescriptor.preferredFontDescriptor(withTextStyle: style)
let font = UIFont.systemFont(ofSize: desc.pointSize, weight: weight)
return metrics.scaledFont(for: font)
}
当已经加载UILabel并在iOS设置中更改了文本大小时,此函数可以正确更改pointSize,但是一旦重新加载UILabel,pointSize就会缩放为其他值(通常是较大的值)。 有人经历过吗? 还有其他方法可以用不同的权重来修改preferredFontTextStyle吗?
例如,我将文本大小更改为AX3
图像1:已经在此视图上,pointSize的“ body”样式正确更改为40。
图片2:转到上一个屏幕并返回,pointSize增加了很多。