Iphone 基于uitextview中的行数获取子字符串

Iphone 基于uitextview中的行数获取子字符串,iphone,ios,Iphone,Ios,FROM UITextview我可以获取给定文本的行数,如果超过4行,我想截断其余的行,那么如何获取子字符串的索引?它将限制用户在UITextview中输入超过4行 - (BOOL)textView:(UITextView *)aTextView shouldChangeTextInRange:(NSRange)aRange replacementText:(NSString*)aText { if (textView.contentSize.height/tex

FROM UITextview我可以获取给定文本的行数,如果超过4行,我想截断其余的行,那么如何获取子字符串的索引?

它将限制用户在UITextview中输入超过4行

   - (BOOL)textView:(UITextView *)aTextView shouldChangeTextInRange:(NSRange)aRange replacementText:(NSString*)aText
    {

        if (textView.contentSize.height/textView.font.lineHeight>4) {
            return NO;
        }
        else
            return YES;
    }
NSMutableString*str=[[NSMutableString alloc]initWithString:textView.text];
静态int numberOfLines=0;
int nOC=1;
而(nOC<[textView.text count]&&numberOfLines<4){
if([[str substringWithRange:NSMakeRange(nOC,1)]IsequalString:@“\n”];){
numberOfLines++;
}
nOC++;
}
NSString*finalString=[str substringWithRange:NSMakeRange(1,nOC)];

我希望这对你来说是可行的。我计算了第4个“\n”之前的字符数,并使用substringWithRange提取所需的字符串。我没有尝试过这段代码,但是这个逻辑应该可以工作,或者至少可以帮助您编写代码。快乐编码:)

你能展示一下你现在拥有的代码吗?没有编码。我现在没有任何代码。谢谢你的回复,我会试试这个。
NSMutableString *str = [[NSMutableString alloc] initWithString:textView.text];
static int numberOfLines = 0;
int nOC = 1;
while (nOC < [textView.text count] && numberOfLines < 4) {
    if ([[str substringWithRange:NSMakeRange(nOC,1)] isEqualToString:@"\n"];  ) {
        numberOfLines++;
    }
    nOC++;
}

NSString *finalString = [str substringWithRange:NSMakeRange(1,nOC)];