Ios CTFramesetterSuggestFrameSizeWithConstraints包装文本时
我在CoreText中遇到了“鸡还是蛋”的问题 我需要知道Ios CTFramesetterSuggestFrameSizeWithConstraints包装文本时,ios,core-text,Ios,Core Text,我在CoreText中遇到了“鸡还是蛋”的问题 我需要知道CGSize一个NSAttributedString当它被包装在一个图像上时将占用的空间。 我有一个UITableView,在右上角显示文本和图像。 在我的模型上,我存储了CTFrameSetterRef,也就是说,我只计算一次 加载模型实体并在cellForRowAtIndexPath中传递单元格aCTFrameSetterRef时显示模型实体 我还使用frameSetter和ctFramesetter建议FrameSizeWithCo
CGSize
一个NSAttributedString
当它被包装在一个图像上时将占用的空间。
我有一个UITableView,在右上角显示文本和图像。
在我的模型上,我存储了CTFrameSetterRef
,也就是说,我只计算一次
加载模型实体并在cellForRowAtIndexPath
中传递单元格aCTFrameSetterRef
时显示模型实体
我还使用frameSetter和ctFramesetter建议FrameSizeWithConstraints
这是直截了当的,我现在有一个对象数组,其中有一个AttributeString要渲染,一个frameSetter要渲染,还有一个高度,这样tableView在更新单元格之前就知道了这一点
现在,我想将文本环绕在右上角的图像上。
当我想要预先计算值时,这会出现一些问题
据我所知,我需要一个CTFrameSetter来计算大小
(使用CTFramesetterSuggestFrameSizeWithConstraints)。
如果我的框架是矩形的,这只会给我大小——如果我想包装文本,我需要创建一个路径并设置它的大小——但这是在我知道大小之前!
然后我需要将路径添加到字典中,并使用字典构建CTFrameRef
我的问题是,如果属性文本环绕在图像周围,如何预先计算单元格的高度?您需要逐行布局:
CTFrameSettersSuggestFrameSizeWithConstraints
获取行高和fitRange
fitRange
结尾处继续