UITextviewから、特定のテキストの行数を取得できます.4行以上の場合、残りを切り捨てたいので、インデックスを部分文字列に取得するにはどうすればよいですか?
2 に答える
1
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)];
これがうまくいくことを願っています。4番目の「\n」までの文字数を計算し、substringWithRangeを使用して目的の文字列を抽出しました。私はこのコードを試しませんでしたが、このロジックは機能するか、少なくともあなたのコードを支援するはずです。幸せなコーディング:)
于 2012-05-07T11:12:55.880 に答える
1
ユーザーが 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;
}
于 2012-05-07T11:05:44.790 に答える