百度了一下计算NSAttributeString高度的代码,出来的基本上都没有太完美的,要么有误差,要么。。。。总之一堆看不懂的代码还没有正好的,那么就让我来解决这个问题吧。。。[哈哈哈],[自恋脸]。
思路:我们大家都知道自动布局的情况下,对于label,设置了left top right约束之后,高度是可以自己撑开的,那么我们能不能等撑开之后,再获取高度呢???
答案当然是可以的了啊,不然我写这篇文章干啥...
<DingDetailListTableViewCell>是自定义的带xib的cell,contentLabel是添加在cell.contentview上的label并且设置好了约束DingDetailListTableViewCell *cell = [NSBundle.mainBundle loadNibNamed:@"DingDetailListTableViewCell" owner:nil options:nil].lastObject;
cell.contentLabel.attributedText = self.attriContent;
[cell.contentView layoutIfNeeded];
NSLog(@"%d",(int)cell.contentLabel.bounds.size.height);
cell.contentLabel.bounds.size.height就是你想要的高度,不信你试试
网友评论