UITextView のキーボードをリターンキーで閉じるにはどうすればいいですか? 質問する

UITextView のキーボードをリターンキーで閉じるにはどうすればいいですか? 質問する

IB のライブラリでは、導入部で、returnキーが押されるとキーボードがUITextView消えると説明されています。しかし、実際にはreturnキーは '\n' としてのみ機能します。

ボタンを追加して[txtView resignFirstResponder]キーボードを非表示にすることができます。

returnしかし、追加しなくても済むように、キーボードのキーにアクションを追加する方法はあるのでしょうかUIButton?

ベストアンサー1

代わりにここにスニペットを投稿することにしました:

必ずUITextViewDelegateプロトコルのサポートを宣言してください。

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {

    if([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO;
    }

    return YES;
}

Swift 4.0 アップデート:

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
    if text == "\n" {
        textView.resignFirstResponder()
        return false
    }
    return true
}

おすすめ記事