例如,我想显示如下内容:
It is my
大胆的text label.
但是It is my
的长度是不可预料的,因为,它可能变成
Oh! It is my
大胆的 text label.
所以,我不能使用 3 个标签来这样做。有什么推荐吗?谢谢。
UILabel 不能开箱即用。
我推荐使用GitHub上提供的OHAttributedLabel。
您仍然可以使用 3 个标签 :)
假设It is my
标签是label1
,编写一个包装函数,您总是调用它来更改label1
的文本;此函数还应重新计算label1
的大小和重新定位label2
和label3
.
-(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;
}
瞧 :)
使用“UILabel”,这在严格意义上是不可能的。但是,如果您希望所有文本都是粗体,则可以使用粗体。请参考此页面以获取字体列表。例如,您可以使用 Helvetica-Bold 代替 Helvetica。然而,对于 plain UILabel
s,格式化是全部或全部;所有文本都必须是粗体,或者没有一个是粗体。要显示富文本,其中某些部分为粗体,但其他部分不是,请查看NSMutableAttributedString
. 祝你好运!