//此方法是计算设置行高及字间距之后的高度计算方式
-(CGFloat)getSpaceLabelHeightwithContentString:(NSString *)content
{
NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];
//设置行高
paraStyle.lineSpacing = 11.0f;
// NSDictionary *dic = @{NSFontAttributeName:[UIFont systemFontOfSize:kTextSize], NSParagraphStyleAttributeName:paraStyle};
NSDictionary *dic = @{NSFontAttributeName:[UIFont systemFontOfSize:kTextSize], NSParagraphStyleAttributeName:paraStyle, NSKernAttributeName:@0.1f};
CGSize size = [content boundingRectWithSize:CGSizeMake(kScreenW-30,MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil].size;
return size.height;
}
//此方法单纯计算字符串的高度,在给定宽度的情况下
CGSize titleSize = [_carDetailmodel.carDescription sizeWithFont:[UIFont systemFontOfSize:kTextSize] constrainedToSize:CGSizeMake(kScreenW-30, MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];
//方法使用
1.无行高及字间距
UILabel *testLabel = [UILabel initWithTitle:content withFont:kTextSize textColor:kNewDetailColor];
testLabel.frame =CGRectMake(15, 0, kScreenW-30, titleSize.height);
testLabel.numberOfLines = 0;
[self.view addSubview:testLabel];
2.有行高及自间距
testLabel.height = [self
getSpaceLabelHeightwithContentString:@"我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据我是测试数据"];