UILabel没有注册行间距属性

时间:2014-04-09 07:49:03

标签: ios uilabel

由于某种原因,此代码(特别是粗体文本)根本不会更改文本的行间距:

UIFont* customFont = [UIFont fontWithName:@"BebasNeue" size:70];
NSString * text = @"Their \nIdeas";

**NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text];
NSMutableParagraphStyle *paragrahStyle = [[NSMutableParagraphStyle alloc] init];
paragrahStyle.lineSpacing = 30;
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragrahStyle range:NSMakeRange(0, [text length])];**

UILabel *lbl1 = [[UILabel alloc] init];
[lbl1 setFrame:CGRectMake(120, 70, viewWidth, 180)];
lbl1.backgroundColor = [UIColor clearColor];
lbl1.textColor = grayColor;
lbl1.numberOfLines = 2;
lbl1.attributedText = attributedString;
lbl1.userInteractionEnabled = NO;
lbl1.text = text;
[lbl1 setFont:customFont];
[view addSubview:lbl1];
[lbl1 setTransform:CGAffineTransformMakeRotation(0.35)];

我做错了什么?

1 个答案:

答案 0 :(得分:1)

问题出在这一行,

lbl1.text = text;

在分配包含所有行间距数据的属性字符串后,您正在分配非属性字符串。删除上面的行然后你的代码就可以了。

如果您使用较大的行间距值,请确保标签的高度足以显示第二行。