iOS如何正确设置行高,行间距

设置行间距为10

NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.lineSpacing = 10 - (label.font.lineHeight - label.font.pointSize);
NSMutableDictionary *attributes = [NSMutableDictionary dictionary];
[attributes setObject:paragraphStyle forKey:NSParagraphStyleAttributeName];
label.attributedText = [[NSAttributedString alloc] initWithString:label.text attributes:attributes];

设置行高为30

NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.maximumLineHeight = lineHeight;
paragraphStyle.minimumLineHeight = lineHeight;
NSMutableDictionary *attributes = [NSMutableDictionary dictionary];
[attributes setObject:paragraphStyle forKey:NSParagraphStyleAttributeName];
CGFloat baselineOffset = (lineHeight - label.font.lineHeight) / 4;
[attributes setObject:@(baselineOffset) forKey:NSBaselineOffsetAttributeName];
label.attributedText = [[NSAttributedString alloc] initWithString:label.text attributes:attributes];

备注

设置了行间距后,文字是单行时也会有一个行间距。所以使用设置行高的方式设置行间距更好

参考

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,040评论 3 119
  • 《童年》读后感 马克西姆.高尔基是一位完全靠自学成材的作家,幼时只上过两年的小学,他是从苦难生活的底层奋争、在社会...
    星雨愿心阅读 3,619评论 0 1
  • 在这个人人学英语的时代,大家似乎都快忘了,我们的汉语有多美多强大! 这里有一段英文的诗歌,用中文翻译了一下,结果所...
    半夏天国阅读 3,813评论 0 1
  • 我是个七七年出生的农村人,父母也都是普通的农民。比起别的父母,他们在教育上打骂我并不多,也可能我小时候是个特别乖巧...
    旭日De梦阅读 4,193评论 1 2