boundingRectWithSize: 计算 UILabel 高度
CGRect size_1 = [string boundingRectWithSize:CGSizeMake(320, MAXFLOAT) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingTruncatesLastVisibleLine attributes:@{NSFontAttributeName : [UIFont systemFontOfSize:14.0]} context:nil];
NSStringDrawingUsesLineFragmentOrigin //整个文本将以每行组成的矩形为单位计算整个文本的尺寸 NSStringDrawingUsesFontLeading //使用字体的行间距来计算文本占用的范围,即每一行的底部到下一行的底部的距离计算 NSStringDrawingUsesDeviceMetrics //将文字以图像符号计算文本占用范围,而不是以字符计算。也即是以每一个字体所占用的空间来计算文本范围 NSStringDrawingTruncatesLastVisibleLine //当文本不能适合的放进指定的边界之内,则自动在最后一行添加省略符号。如果NSStringDrawingUsesLineFragmentOrigin没有设置,则该选项不生效
CGSize size_0 = [string sizeWithAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:17]}]; 这种方式计算的宽度会根据字符串的长度无限的增加
高度错误的解决方案 https://www.cnblogs.com/sundaysgarden/articles/9351148.html