我正在尝试获取TextView
中的行数。我在这里搜索了一个解决方案,基本上每个线程都有相同的答案:contentheight / fontlineheight。
我有{8}行的TextView
,我运行此代码,我得到contsize : 1.944413
NSLog(@"contsize : %f", descLabel.contentSize.height/descLabel.font.lineHeight);
我做错了什么?
答案 0 :(得分:1)
对于iOS7,这个版本要注意你可以在UITextView中使用不同的字体(和字体大小):
- (NSUInteger)numberOfLinesInTextView:(UITextView *)textView
{
NSLayoutManager *layoutManager = [textView layoutManager];
NSUInteger index, numberOfLines;
NSRange glyphRange = [layoutManager glyphRangeForTextContainer:[textView textContainer]];
NSRange lineRange;
for (numberOfLines = 0, index = glyphRange.location; index < glyphRange.length; numberOfLines++){
(void) [layoutManager lineFragmentRectForGlyphAtIndex:index
effectiveRange:&lineRange];
index = NSMaxRange(lineRange);
}
return numberOfLines;
}