我正在为 iPhone 和 iPod Touch 制作一个 RSS 解析器,我需要能够为每篇文章设置每个单元格中显示的行数。我想打破每 39 个字符,这是最适合我正在使用的字体大小的一行。
我想将字符串中的字符数除以每行的字符数。我想有一个整数作为答案,必要时四舍五入。
这就是我到目前为止所拥有的。怎么了?
NSNumber *lines = [[NSNumber alloc] initWithInteger:[cell.textLabel.text length]/kLineLength];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setRoundingMode:NSNumberFormatterRoundUp];
[formatter setRoundingIncrement:[[[NSNumber alloc]initWithInteger:1]autorelease]];
NSNumber *roundedLines = [[NSNumber alloc]initWithInteger: [[formatter numberFromString:[lines stringValue]]integerValue]];
[cell.textLabel setNumberOfLines:[roundedLines integerValue]];
[roundedLines release];
[formatter release];
[lines release];
编辑
我不是在换行之后,而是知道要给标签多少行。所以,虽然我有效地设置换行符,但我并没有真正这样做。我让 iOS 找出中断的地方,我只是告诉它要使用多少行。