使UILabel的文字变为粗体

时间:2011-01-05 09:38:01

标签: ios objective-c uilabel uifont textcolor

我想让UILabel的文字加粗

infoLabel=[[UILabel alloc]initWithFrame:CGRectMake(90,150, 200, 30)];
[infoLabel setText:@"Drag 14 more Flavors"];
[infoLabel setBackgroundColor:[UIColor clearColor]];
[infoLabel setFont:[UIFont fontWithName:@"Arial" size:16]];

[infoLabel setTextColor:[UIColor colorWithRed:193.0/255 
                                        green:27.0/255 
                                         blue:23.0/255 
                                        alpha:1 ]];

6 个答案:

答案 0 :(得分:125)

如果要保留系统字体并使其变为粗体:

[infoLabel setFont:[UIFont boldSystemFontOfSize:16]];

答案 1 :(得分:66)

尝试

[infoLabel setFont:[UIFont fontWithName:@"Arial-BoldMT" size:16]];

您可能还需要检查您尝试使用的字体是否在设备上可用

答案 2 :(得分:33)

使用Xcode中的GUI选择标签,然后转到Attributes Inspector。其中一个选项是Font。单击字体图标(不是上下箭头)。在出现的弹出窗口中展开Font ComboxBox。在Bold System部分下,选择Regular。

Xcode screenshot

答案 3 :(得分:12)

对于快速用户,这应该有效:

myLabel.font = UIFont.boldSystemFont(ofSize: 12.0)

或者如果您想使用其他字体:

myLabel.font = UIFont(name:"HelveticaNeue-Bold", size: 12.0)

答案 4 :(得分:0)

如果您没有自定义字体的粗体变体,则可以将笔划设置为负值以产生粗体效果。见这里:

How can I both stroke and fill with NSAttributedString w/ UILabel

答案 5 :(得分:0)

在可能的情况下,我建议使用动态字体大小为用户提供最佳的可访问性。

您可以通过以下操作使标签使用系统动态字体并将其设置为粗体:

 exampleLabel.font = UIFont.preferredFont(forTextStyle: .body, compatibleWith: UITraitCollection(legibilityWeight: .bold))