TTTAttributedLabel行数错误

时间:2012-10-24 10:58:38

标签: ios

根据上面的标题,有没有人在使用TTTAttributedLabel时遇到过这个问题?

目前,如果标签只显示1行,则不会显示该应用。但如果标签大小超过1行,它就可以正常工作。

有没有人遇到过这个问题/错误?希望这也可以帮助别人,谢谢!

1 个答案:

答案 0 :(得分:2)

基于这两篇文章:

看起来CoreText如何测量高度,以及绘制文本时实际渲染的内容,当它是单行时,会出现问题。

似乎正在发生的是文本存在,但绘制文本的窗口仍然太小。所以解决方案是手动将TTTAttributeLabel的框架设置为大于sizeToFit给出的值。

这包括两个步骤:

  1. 检测标签高度何时为单行
  2. 将高度调整为更大的颜色
  3. 这样的事情可以做到:

    if (labelHeight < kSingleLineLabelHeight) {
       labelHeight = kSingleLineLabelHeight
    }
    

    然后相应地设置标签高度。