NSAttributedString宽高计算小技巧

通常对于CoreText之类自己实现绘制的控件来说,计算富文本的宽高事实上须要依赖CTFramesetterSuggestFrameSizeWithConstraints这种方法。

但有些时候。我们可能仅仅是使用UILable、UITextView等系统控件,设置了他们的attributedText。此时。计算控件宽高事实上能够利用系统自身的方法。

比如:
label.attributedText = attributedString;
仅仅须要使用
h = [label sizeThatFits:CGSizeMake(100,CGFLOAT_MAX)].height
就可以获得对应的高度。就可以用于兴许的高度计算。

这个小技巧希望对大家有帮助。

当然,假设你使用autolayout,这样的依据内容调整控件大小的工作则会更加简单,仅仅要设置好对应的约束就可以。

原文地址:https://www.cnblogs.com/liguangsunls/p/7209724.html