我先告诉你我的要求
我将strings
存储在一个字符串变量str中,
NSString *str=@"multiple strings";
接下来,我想指定上述字符串适合的宽度,例如width = 350和fontsize = 16;现在我将如何知道在给定的width = 350和fontsize = 15的情况下,文本将占据多少行(我的意思是行数)
最佳答案
您可以使用UIStringDrawing.h
中的一种方法来找到绘制字符串所需的大小(以及高度)。当绘制为350px的约束宽度时,此方法将为您提供尺寸:
CGSize maximumSize = CGSizeMake(350, CGFLOAT_MAX);
UIFont *font = [UIFont systemFontOfSize:16];
CGSize size = [str sizeWithFont:font constrainedToSize:maximumSize lineBreakMode:NSLineBreakByWordWrapping];
在此示例中,
maximumSize
使用CGFloat
的最大可能高度(有效为无穷大),宽度为350px。这实际上意味着“通过将宽度限制为350像素,为我提供此文本的大小”。