美文网首页IOS 开发
UILabel加载html并计算高度

UILabel加载html并计算高度

作者: honey缘木鱼 | 来源:发表于2019-09-15 18:24 被阅读0次
设计需求图

需求: 每个列表都有对应的规则,这些规则是html ,需要得到html的高度计算出每个cell的高度。

一.先把HTMLString 转化为NSAttributedString

- (NSAttributedString *)attributedStringWithHTMLString:(NSString *)htmlString
{
NSDictionary *options = @{ NSDocumentTypeDocumentAttribute : NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute :@(NSUTF8StringEncoding) };
NSData *data = [htmlString dataUsingEncoding:NSUTF8StringEncoding];
return [[NSAttributedString alloc] initWithData:data options:options documentAttributes:nil error:nil];
}

二.计算HTMLString高度

方法一.

 CGFloat h =  [_tipLabel.attributedText boundingRectWithSize:CGSizeMake(_bgView.width-30, CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin context:nil].size.height;

方法二.

 CGFloat h1 = [_tipLabel sizeThatFits:CGSizeMake(_bgView.width-30,CGFLOAT_MAX)].height;

注意:
UILabel要设置换行,_tipLabel.numberOfLines = 0;

相关文章

网友评论

    本文标题:UILabel加载html并计算高度

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