私はiPhoneアプリに取り組んでおり、iPhoneアプリではユーザーがUITextViewに入力しています。通常のリターンキーの代わりに完了キーをキーボードに追加するにはどうすればよいかと思っていましたが、そのキーをクリックするとキーボードが閉じます。
ありがとう!
私はiPhoneアプリに取り組んでおり、iPhoneアプリではユーザーがUITextViewに入力しています。通常のリターンキーの代わりに完了キーをキーボードに追加するにはどうすればよいかと思っていましたが、そのキーをクリックするとキーボードが閉じます。
ありがとう!
プロトコル-textViewShouldReturn:
にメソッドはありません。UITextViewDelegate
return(done)キーでキーボードを閉じたい場合は、代わりにUITextFieldを使用するのがおそらく最善であり、UITextView
複数行のテキストを編集することを目的としています(したがって、改行を入力する方法が必要です)。
でリターンキーを押したときに本当にキーボードを閉じたい場合は、UITextView
おそらく次のようなことを行うことができます。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if ([text isEqual:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
次のように簡単です。
textField.returnKeyType=UIReturnKeyDone;
これをテキスト フィールドのデリゲートに追加して、キーボードが押されたときにキーボードを削除します。
- (BOOL)textFieldShouldReturn:(UITextField *)aTextfield {
[aTextfield resignFirstResponder];
return YES;
}
設定に加えて:
textField.returnKeyType = UIReturnKeyDone;
テキスト フィールドのデリゲートをクラスに設定し、次のようにする必要があります。
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
この returnKeyType の設定は、Interface Builder からも実行できます (UI が XIB で定義されている場合)。一方、 -resignFirstResponder は、キーボードが確実に消えるようにします。-textFieldShouldReturn: デリゲート メソッドで実行する必要があります。これは、ユーザーが [完了] ボタンをタップしたときに呼び出されるためです。
お役に立てれば。