ユーザーがUITextView要素の画面に触れるときにキーボードを辞めるのに役立つコードがいくつか見つかりました。タッチ時にキーボードを辞める
はここにそれがどのように見えるかです:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [[event allTouches] anyObject];
if([self.speechBubble.speechText isFirstResponder] && [touch view] != self.speechBubble.speechText){
[self.speechBubble.speechText resignFirstResponder];
}
[super touchesBegan:touches withEvent:event];
}
これは、これまで完璧に動作し、ユーザーがテキストビューの外側の任意の場所をタッチした場合は、キーボードを削除します。しかし、それは私がそれを実行している特定のオブジェクトのためにのみ働くので、私は2つのspeechBubblesを持っていれば動作しません。
これを変更して、どのspeechBubbleでも同じ効果が得られるようにするにはどうすればよいですか? (私はこのコードを私のViewControllerから私のSpeechBubbleクラスに移すことができましたが、[touch view]を使ってspeechBubbleのビューの外に触れる方法は少し問題がありました)ありがとう
ファンタスティック、endEditingは素晴らしいです。私はisKindOfClassを使用しようと考えていましたが、そのような[touch view]クラスにアクセスできるかどうかはわかりませんでした。ありがとう – user339946