Как установить текстовый шрифт как System Thin в Swift? [дубликат]

этот вопрос уже есть ответ здесь:

Я хочу установить текст метки как системный тонкий. Читайте в StackOverflow и нашли такой ответ:

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

но это не сработало. Как я могу улучшить свой код и сделать стиль тонкого шрифта программно?

2 ответов


на 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];

Если вы используете iOS 8.2 или выше вы можете использовать это:

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

для предыдущих версий просто использовать HelveticaNeue-Thin в качестве шрифта.