2013-10-04 76 views
1

在iOS 7中,此方法已被弃用。该文件是模糊的替换和指出:sizeWithFont使用哪种替代方法:minFontSize:actualFontSize:forWidth:lineBreakMode:?

这种方法没有确切的替代方法。人机界面 指南不鼓励以这种方式更改字体大小,因为它会导致 不一致的用户体验。对于某些用例,请参阅UILabel作为可能的 替代方案。

我发现了一个solution,但它忽略了UILabel可以缩小文本,如果需要的话。没有最小字体大小参数。

有没有人找到了一种替代方案,当你真的想要计算标签中某些文本的边界矩形尺寸时,文本太长时会缩小字体大小?

+1

重复的:http://stackoverflow.com/q/19195541/751932 – Speakus

回答

1

你必须爱在这一个苹果的评论...

好像你唯一的选择是自己实现使用boundingRectWithSize:options:attributes:context:原有的功能和弃用功能的详细描述背后的逻辑(“讨论”下)。

使用boundingRectWithSize:options:attributes:context:您可以指定具有特定大小的UIFont,并获得结果宽度。然后,您可以将结果宽度与您所需的宽度进行比较。然而,您仍然需要一些试验和错误来确定实际的字体大小。