上篇文章《富文本用法总结》详细码了关于富文本的一些用法,有介绍行间距的设置方法.在实际开发中经常需要根据后台返回的文字计算控件宽度和高度进行布局,这篇就配合上一篇来设置字间距和计算高度.
UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(50, 200, 300, 800)];
label.layer.borderColor = [UIColor blackColor].CGColor;
label.numberOfLines = 0;
[self.view addSubview:label];
NSString * string = @"许多回忆 藏在心底\n总来不及 都告诉你\n和你一起 爬过山顶 入过海里\n难免粗心 时而大意\n难过开心 你都参与\n笑到抽筋 哭到决堤\n和你一起 想去东京 飞到巴黎";
// 初始化NSMutableAttributedString,并设置文字样式
NSMutableAttributedString * attributedString = [[NSMutableAttributedString alloc] initWithString:string];
// 设置行间距
NSMutableParagraphStyle * paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:10];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, string.length)];
// 设置字间距 NSKernAttributeName