博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(转载)iOS UILabel自定义行间距时获取高度
阅读量:5058 次
发布时间:2019-06-12

本文共 1761 字,大约阅读时间需要 5 分钟。

本文介绍一下自定义行间距的UILabel的高度如何获取,需要借助一下开源的UILabel控件:TTTAttributedLabel

附下载地址 https://github.com/TTTAttributedLabel/TTTAttributedLabel 

下载后,添加到工程里面,导入头文件

 #import "TTTAttributedLabel.h"

直接上代码

NSString *str = @"UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度,UILabel自定义行间距时获取高度.";        //创建tttLabel    TTTAttributedLabel *tttLabel = [[TTTAttributedLabel alloc] initWithFrame:CGRectMake(30, 55, 300, 100)];    tttLabel.lineBreakMode = NSLineBreakByCharWrapping;    tttLabel.lineSpacing = 6;//设置行间距    tttLabel.font = [UIFont systemFontOfSize:12];    tttLabel.numberOfLines = 0; //设置行数为0    [tttLabel setText:str];    tttLabel.textAlignment = NSTextAlignmentLeft;    tttLabel.backgroundColor = [UIColor redColor];    [self.view addSubview:tttLabel];        //获取tttLabel的高度    //先通过NSMutableAttributedString设置和上面tttLabel一样的属性,例如行间距,字体    NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:str];    //自定义str和TTTAttributedLabel一样的行间距    NSMutableParagraphStyle *paragrapStyle = [[NSMutableParagraphStyle alloc] init];    [paragrapStyle setLineSpacing:6];    //设置行间距    [attrString addAttribute:NSParagraphStyleAttributeName value:paragrapStyle range:NSMakeRange(0, str.length)];    //设置字体    [attrString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:12] range:NSMakeRange(0, str.length)];        //得到自定义行间距的UILabel的高度    CGFloat height = [TTTAttributedLabel sizeThatFitsAttributedString:attrString withConstraints:CGSizeMake(300, MAXFLOAT) limitedToNumberOfLines:0].height;        //重新改变tttLabel的frame高度    CGRect rect = tttLabel.frame;    rect.size.height = height;    tttLabel.frame = rect;

 

 

转载于:https://www.cnblogs.com/songxing10000/p/5103580.html

你可能感兴趣的文章
网络爬虫Heritrix源码分析(一) 包介绍
查看>>
__int128的实现
查看>>
Problem - 1118B - Codeforces(Tanya and Candies)
查看>>
jdk1.8 api 下载
查看>>
svn 图标不显示
查看>>
getElement的几中属性介绍
查看>>
iOS 使用Quartz 2D画虚线 【转】
查看>>
平面最接近点对
查看>>
HTML列表,表格与媒体元素
查看>>
PHP、Java、Python、C、C++ 这几种编程语言都各有什么特点或优点?
查看>>
感谢青春
查看>>
Jquery Uploadify4.2 falsh 实现上传
查看>>
雨林木风 GHOST_XP SP3 快速装机版YN12.08
查看>>
linux基础-命令
查看>>
java对象的深浅克隆
查看>>
Hadoop流程---从tpch到hive
查看>>
数据结构3——浅谈zkw线段树
查看>>
Introduction to my galaxy engine 2: Depth of field
查看>>
V2019 Super DSP3 Odometer Correction Vehicle List
查看>>
Python 3.X 练习集100题 05
查看>>