美文网首页
iOS 计算label高度的准确方法

iOS 计算label高度的准确方法

作者: 上下求索zsh | 来源:发表于2021-09-08 11:17 被阅读0次

这种方法计算label高度,会少计算间距

-(CGSize)calculateStringWithFont:(CGFloat)font Size:(CGSize)size{// 影响文字大小的因素有:// 1.跟文字的字体大小有关// 2.跟它限定的宽度有关,宽度越窄,高度越高// 第一个参数:传入一个 CGSize 用来限定它最大的宽度是多少,最大的高度是多少// 如果没有达到最大的宽度和最大的高度,那么久返回实际尺寸,如果超过了你限定的最大宽度和高度,那么只会返回你最大的宽度和高度// 第二个参数:直接传 NSStringDrawingUsesLineFragmentOrigin 就可以,因为它既可以计算单行,也可以计算多行// 第三个参数: 传入一个字典,这个字典就是让你设置字体的大小的,或者字体颜色NSDictionary*attr=@{NSFontAttributeName:[UIFont systemFontOfSize:font]};return[selfboundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin attributes:attr context:nil].size;}

以下方法会包含字体间距,计算更为准确

self.messageLabel.preferredMaxLayoutWidth=260;CGSize size=[self.messageLabel sizeThatFits:CGSizeMake(self.messageLabel.preferredMaxLayoutWidth,CGFLOAT_MAX)];``

作者:Happy晓哥

链接:https://www.jianshu.com/p/91a811756d26

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章

网友评论

      本文标题:iOS 计算label高度的准确方法

      本文链接:https://www.haomeiwen.com/subject/xjhvwltx.html