明日こそ、定時

残業は悪と心に決めてる社畜SEが、定時で帰れた時の暇つぶしに読める記事を綴っています。雑記。好きなこといろいろと…

キーボード以外をタッチするとキーボードが下がる方法

スポンサードリンク

TextFieldを実装した際にキーボードでReturnやGoを押さない限りキーボードが下がらないのが気になり色々調べた結果一応わかったのでメモをします。

1.オブジェクトの配置

キーボードを出すためにTextFieldを適当に配置します。

f:id:sasagin:20151025181100p:plain

そして次に、TapGestureRecognizerを配置します。

f:id:sasagin:20151025181112p:plain

ViewControlloerに配置すると以下の画像のようになります。

f:id:sasagin:20151025181111p:plain

2.コードの編集

先ほどのTapGestureRecognizerをaction接続します。 ここではnameはtapScreenとします self.view.endEditing(true)をtapScreenの中に記述します。

self.view.endEditing(true)を調べたところ "UIView の endEditing(YES) が呼び出されることで、First Responder として編集状態になっている UITextField も endEditing:YES となり、UITextField の "Editing Did End" イベントが呼び出され、最終的に、キーボードが非表示になる感じのようです。" と書いてありました。(http://program.station.ez-net.jp/special/handbook/objective-c/uiview/hide-keyboard.asp) これはObjective-Cなので記述の仕方が若干変わりますが、内容としてはこんな感じだと思います。