如何知道UILabelView中显示的文本?

时间:2010-05-20 23:53:59

标签: iphone text uilabel

如何知道UILabelView中显示的文字?我有一个大文本,我将有3个uilabels代表3个iPad应用程序,如NYTimes。当我把大文本放在第一列(UILabelView)时,我需要知道那里显示了多少文本..

如果你建议另一种解决方案,请告诉我。 查理

1 个答案:

答案 0 :(得分:0)

您要求的是一种衡量文字的方法。 iPhone SDK记录了一种方法,可以找出文本主体的大小,但不知道文本在给定空间中的适合程度。您可以使用前者迭代地执行后者。

在UIStringDrawing.h中查找以下方法:

- (CGSize)sizeWithFont:(UIFont *)font forWidth:(CGFloat)width lineBreakMode:(UILineBreakMode)lineBreakMode;

使用此方法对字符串的不同长度子字符串执行(最好是二进制)搜索,直到找到适合特定高度的子字符串。您现在已经知道第一个UILabel可以显示多少文本。重复每列。

你也可以在CoreText中使用CTTypesetter,但这是3.2前进。