iPhone:如何在不考虑宽度的情况下获取在textView中输入的行数

时间:2011-01-10 10:08:25

标签: iphone cocoa-touch ios4 uitextview ios-4.2

在我的iPhone应用程序中,我有一个textview,用户将在其中输入多行数据。

现在我需要一个可以获得行数的解决方案。

我需要一个不考虑宽度的解决方案。

我只需要用户在textView中输入的行数。

我该怎么办?

3 个答案:

答案 0 :(得分:2)

既然你说“不考虑宽度”而不是“不考虑身高”,你就是这样做的:

int numberOfLines = yourUITextView.contentSize.height / yourUITextView.font.lineHeight

UIFont属性lineHeight是iOS4.0中的新增功能,旧版本使用leading属性。

编辑,

此答案适用于已自动插入换行符的文本视图(即行变长),如果您只想知道手动插入换行符的数量,Terentes会回答这个问题。

要计算手动插入的换行符,这个黑客应该这样做:

int numberOfManuallyBreaks = [[yourUITextView componentsSeparatedByString:@"\n"] count];

答案 1 :(得分:0)

你是说当用户按下键盘上的返回键时,你的意思是?如果是这样,请计算其中的\ n。 希望有所帮助。

NSArray *arrayWithLines = [myString componentsSeparatedByString:@"\n"];
NSLog(@"Number of Lines:%@",[arrayWithLines count]);

答案 2 :(得分:0)

您是否尝试使用TextView的numberOfLines属性获取行数。