UITextView
ユーザーが入力したときに動的にタグ付けできるを作成しました@
。
@
自分が作成した特定のタグ付けプロセスを停止するために、削除された を検出することはできますか? もしそうなら、どうすればそれを行うことができますか? UITextView
そのようなデリゲート メソッドはありません。
UITextView
ユーザーが入力したときに動的にタグ付けできるを作成しました@
。
@
自分が作成した特定のタグ付けプロセスを停止するために、削除された を検出することはできますか? もしそうなら、どうすればそれを行うことができますか? UITextView
そのようなデリゲート メソッドはありません。
私は使うだろう
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
次に、NSString
に追加された最後の文字を格納する を作成しますUITextView
。上記のメソッド内に、次のスニペットを追加します。
if ([text isEqualToString:@""] && [lastRecordedString isEqualToString@"@"]) {
//do whatever you want to do when an @ is deleted
}
lastRecordedString = [textView.text substringFromIndex:[string length]-1];
編集: 上記の編集されたコードを参照してください。現在は、文字が削除されlastRecordedString
た後の最後の文字です。UITextView
これはうまくいくはずです。
使用によって置き換えられる元のテキストを取得できます。
NSString *originalText = [textView.text substringWithRange:range];
あなたの
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
方法。
次に、する
if ([originalText rangeOfString:@"tag"].length > 0) {
NSLog(@"delete tag string");
}
ユーザーが特定の文字列を削除したかどうかを検出します。
お役に立てば幸いです。