如何在UILabel中加粗一些文字?

时间:2012-08-18 03:55:35

标签: ios uilabel

例如,我想显示如下内容:

It is my 粗体 text label.

It is my的长度不能预期,因为它可能会变成

Oh! It is my 粗体 text label.

所以,我不能用3个标签这样做。有建议吗?感谢。

3 个答案:

答案 0 :(得分:2)

UILabel无法开箱即用。

我建议使用OHAttributedLabel上提供的github

答案 1 :(得分:1)

你仍然可以使用3个标签:)

假设It is my标签为label1,请编写一个总是调用以更改label1文本的包装函数;此函数还应重新计算label1的大小并重新定位label2label3

-(void) setLabel1Text(NSString* newText)
{
    label1.text = newText;
    int label1TextLength = [label1.text sizeWithFont:label1.font];

    label2.x = label1.x + label1TextLength;
    label3.x = label2.x + label2.width;
}

瞧瞧:)

答案 2 :(得分:-1)

使用'UILabel',这不是严格可行的。但是,如果希望所有文本都是粗体,则可以使用粗体字体。参考thi this page获取字体列表。例如,您可以使用Helvetica-Bold代替Helvetica。但是,使用普通UILabel s,格式化是全部或全部;所有文本都必须是粗体,或者都不是粗体。要显示某些部分为粗体的富文本,但不显示其他部分,请查看NSMutableAttributedString。 祝好运!