我正在尝试使用sizeWithFont,如下所示:
[commentTextLabel.text sizeWithFont:commentTextLabel.font
constrainedToSize:CGSizeMake(commentTextLabel.frame.size.width, CGFLOAT_MAX)
lineBreakMode:UILineBreakModeWordWrap];
当我这样做时,我希望返回的CGSize具有与传递的宽度相同的宽度(commentTextLabel.frame.size.width
)但是,由于某种原因,尽管文本有足够的宽度,但宽度会减小垂直的空间来成长。
以下是我看到的值:
360.000000, CGFLOAT_MAX
335.000000, 88.000000
我只是误解了这个功能?如果是这样,我怎么能实现这个来确定约束到某个宽度时文本的高度?
答案 0 :(得分:5)
字符串的内容和字体的大小是多少?
在我看来,它正如您所期望的那样包装单词并返回包含结果所需的最小大小。请注意,您的Out宽度仅比In的宽度少25个点。除非您的字符串恰好包裹在360点,否则您希望得到的宽度小于约束大小。
答案 1 :(得分:0)
在玩了一些之后,我相信正在发生的事情是文本以这样的方式包裹,即最长的行只有335像素宽。我正在使用的解决方案是仅使用此函数返回的高度。