- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options context:(nullable NSStringDrawingContext *)context NS_AVAILABLE(10_11, 6_0)
富文本一般会用这个方法计算高度,开发过程之中在计算高度时发现添加了表情之后高度计算会出错,在网上看到有说NSStringDrawingOptions设置问题的(NSStringDrawingUsesFontLeading|NSStringDrawingUsesLineFragmentOrigin),我在设置上并没有错误。
后来查资料,YYLabel有解决的方案——YYTextLayout。
YYTextLayout *layout = [YYTextLayout layoutWithContainerSize:CGSizeMake(ScreenWidth-margan, MAXFLOAT) text:attributed];
CGFloat height= layout.textBoundingSize.height;
height就是计算之后控件的高度
-end-