gpt4 book ai didi

ios - 向 UILabel 添加粗体

转载 作者:行者123 更新时间:2023-11-29 10:54:30 24 4
gpt4 key购买 nike

我正在尝试弄清楚如何使用在 Interface Builder 中定义的字体最好地加粗和取消加粗 UILabel。

我知道我可以做到这一点,例如:

[myLabel setFont:[UIFont boldSystemFontOfSize:14.0]];

但随后我强制字体与它在 IB 中的设计方式可能不同(在样式和大小上)。

我正在寻找本质上可以做到这一点的东西:

[myLabel setBold:TRUE];

或 False,视情况而定。

有办法吗?

最佳答案

不幸的是,UIKit 中没有真正的“粗体”概念。如果您尝试将属性字符串的一部分设置为“粗体”,您实际上是在选择同一字体系列中的粗体字体变体。

你可以这样写一些半黑的东西:

@implementation UIFont (BoldVariant)

- (UIFont *)boldVariant
{
for (NSString *fontName in [UIFont fontNamesForFamilyName:self.familyName]) {
if ([fontName hasSuffix:@"-Bold"]) {
return [UIFont fontWithName:fontName size:self.pointSize];
}
}

// If we couldn't find it, return the same font.
return self;
}

@end

这假定字体遵循标准命名方案。它还假定 fontNamesForFamilyName: 返回任何值。我注意到使用系统字体时,它会返回一个空数组。

关于ios - 向 UILabel 添加粗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19011663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com