如何为 UILabel 设置 "bold" 动态字体类型?

How to set a "bold" dynamic font type for UILabel?

iOS 的 Apple documentation says 应用程序可以使用文本样式和动态字体类型,因此文本大小会根据用户的阅读偏好自动调整。

我有一个文本样式 Body 并将 Dynamic Type 设置为 true 以便它自动调整文本大小。这个效果不错。

这段文字我也想让它出现bold。我还没有找到如何通过代码或在 Interface Builder 中实现此目的的方法。

有没有办法实现“粗体动态字体类型”?

好的,看来 documentation 提供了提示。对于使用自定义字体,我现在将 bold 字体视为自定义字体,可以使用 UIFontMetrics class.

如果我将“粗体自定义字体”传递给 UIFontMetrics class 的 scaledFontForFont 方法,我将使用动态字体类型 UIFontTextStyleBody 获得所需的结果。

UIFont* boldSystemFont = [UIFont boldSystemFontOfSize:17];
myLabel.font           = [[UIFontMetrics metricsForTextStyle:UIFontTextStyleBody] scaledFontForFont:boldSystemFont];

到目前为止,我只看到这种使用代码的方式。不知道这是否也可以在 Interface Builder 中设置。