3
是否有任何方法可以确定在给定空间中可以渲染多少NSString?确定使用NSString绘制/尺寸方法绘制的子字符串
我知道所有的NSString sizeWithFont方法(例如sizeWithFont:constrainedToSize:lineBreakMode :)。如果字符串太长而不适合,它们不会告诉你字符串的哪一部分能够被渲染。
举例来说,如果我有
NSString *testString = @"The brown dog";
我呼吁:
[testString sizeWithFont:[UIFont systemFontOfSize:17] constrainedtoSize:CGSizeMake(20, 20) lineBreakMode:UILineBreakModeWordWrap];
我可以拿回CGSize = {} 20,20。这告诉我字符串至少需要整个尺寸,但它并不告诉我它是否结束,或者能够适合多少。如果只有“棕色”能够适应,我想知道这一点。
也许一些核心基金会的方法来做到这一点?
对不起,应该早一点回复了。你所说的第一部分并不完全适用于我之后的内容,但循环的建议与我们最终所做的一致。基本上,我们刚刚开始时的尺寸很大,并且执行了或多或少的二分查找以找到最适合的最长字符串。 – DougW