これは Niels Hansen からの引用です : iPhone キーボードを閉じる
覚えておく必要があることがいくつかあります。開発者が設定を忘れている一番の部分は、textField のデリゲートです。
Interface Builder を使用している場合は、textField のデリゲートをファイル Owner に設定する必要があることに注意してください。
Interface Builder を使用していない場合は、テキストフィールドのデリゲートを self に設定してください。returnType も含めます。たとえば、textField が gameField と呼ばれていた場合:
gameField.delegate = self;
gameField.returnKeyType = UIReturnKeyDone;
ViewController の UITextFieldDelegate も実装する必要があります。
@interface YourViewController : UIViewController <UITextFieldDelegate>
最後に、textFieldShouldReturn メソッドを使用して呼び出す必要があります。
[textField resignFirstResponder]
-(BOOL) textFieldShouldReturn:(UITextField*) textField {
[textField resignFirstResponder];
return YES;
}
すべての textFields はこの同じ方法を使用するため、この設定は一度だけ行う必要があります。デリゲートが textField に設定されている限り、インターフェイスに UITextFieldDelegate が実装されます。textFieldShouldReturn メソッドを追加し、resignFirstResponder をセットで呼び出します。