質問

私はiPhoneアプリに取り組んでおり、iPhoneアプリでは、ユーザーがUITEXTVIEWで入力しています。通常の返品キーを持つ代わりに、キーボードに[キーボードに[完了]キーを追加し、キーをクリックするとキーボードが閉じられるのではなく、どのようにして追加できるのかと思っていました。

ありがとう!

役に立ちましたか?

解決

ありません -textViewShouldReturn: の方法 UITextViewDelegate プロトコル。キーボードを却下するためにリターン(完了)キーが必要な場合は、代わりに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は、XIBでUIを定義している場合、インターフェイスビルダーからも実行できます。一方、-resignfirstresponderは、キーボードが消えることを確認します。 -textfieldshouldreturn:Delegateメソッドで実行する必要があります。これは、ユーザーが[完了]ボタンをタップしたときに呼び出されるためです。

お役に立てれば。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top