int targetTextViewWidth=424;
NSString *msgStr=@"What are you doing?";
UIFont *tableCellMsgFont=[UIFont systemFontOfSize:16];
UITextView *textView = [[UITextView alloc] init];
[textView setFont:tableCellMsgFont];
textView.text=msgStr;
CGSize sizeThatFitsTextView = [textView sizeThatFits:CGSizeMake(targetTextViewWidth, MAXFLOAT)];
int lines = (int)lroundf(sizeThatFitsTextView.height) / (int)lroundf(tableCellMsgFont.lineHeight);
NSLog(@"lines=%d",(int)lines);注意:当行数多过10, 可能不太精准.

本文介绍了一种使用iOS原生UI组件UILabel来计算给定文本所需显示行数的方法。通过设置字体大小和宽度限制,可以得到文本完全显示所需的行数。
1439

被折叠的 条评论
为什么被折叠?



