正常
+ (CGFloat)getLabelHightWithtextSize:(CGFloat)textFont labelWidth:(CGFloat)labelWidth labelText:(NSString *)labelText
{
// 高度随便写, 要求尽量写大一点
CGSize size = CGSizeMake(labelWidth, 20000);
// 字典里, 传入字号的大小
NSDictionary *dic = [NSDictionary dictionaryWithObject:[UIFont systemFontOfSize:textFont] forKey:NSFontAttributeName];
CGRect frame = [labelText boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil];
return frame.size.height;
}
带格式的字符串
+ (CGFloat)heightWithContent:(NSString *)content
{
NSMutableParagraphStyle* style = [[NSMutableParagraphStyle alloc] init];
style.lineSpacing = 3;
style.paragraphSpacing = 5;
NSAttributedString* string = [[NSAttributedString alloc] initWithString:content?:@"" attributes:@{NSParagraphStyleAttributeName:style, NSFontAttributeName:[UIFont systemFontOfSize:13]}];
CGSize size = CGSizeMake(CGRectGetWidth([UIScreen mainScreen].bounds) - 30, 1000);
size = [string boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading context:nil].size;
return size.height + 37.5;
}