如何在Swift中将文本字体设置为System Thin?

时间:2015-11-30 13:39:24

标签: ios swift fonts programmatically-created

我想将标签文本设置为System Thin。读入StackOverflow并找到这样的答案:

labelDescriptionView.font = UIFont(name: "System-Thin", size: 15.0)

但它不起作用。如何改进我的代码并以编程方式制作Thin字体样式?

2 个答案:

答案 0 :(得分:26)

Interface Builder中的system字体是操作系统的默认字体,它不是您可以通过它的名称获得的字体。对于系统字体,Apple提供以下方法:

+ (UIFont *)systemFontOfSize:(CGFloat)fontSize;
+ (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize;
+ (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize;

这些不包括任何精简版本,但您可以使用iso 8.2:

+ (UIFont *)systemFontOfSize:(CGFloat)fontSize weight:(CGFloat)weight;

你可以传递的地方:作为权重:

UIFontWeightUltraLight
UIFontWeightThin
UIFontWeightLight
UIFontWeightRegular
UIFontWeightMedium
UIFontWeightSemibold
UIFontWeightBold
UIFontWeightHeavy

因此,瘦系统字体将是:

UIFont *thinFont = [UIFont systemFontOfSize:15 weight:UIFontWeightThin];

答案 1 :(得分:13)

如果您使用的是iOS 8.2或更高版本,则可以使用此功能;

label.font = UIFont.systemFontOfSize(15, weight: UIFontWeightThin)

对于以前的版本,只需使用HelveticaNeue-Thin作为您的字体。