キーボードを閉じる iOSアプリ開発
テキストフィールドなどを選択した時に、下からにゅっと現れるキーボードを閉じてみましょう。
Udemy の 完全攻略!初心者からプロになるためのiOS 9アプリ開発のすべて という講座で、レクチャー50の内容です。
開発環境
完成形
二つの方法でキーボードを閉じることができるようになります。
- 画面の適当なところをタップしたら閉じる
- キーボードのリターンをタップ
画面の適当なところをタップ
Xcodeで新規プロジェクトを作成します。テンプレートは Single View Application を選択し、アプリ名をDemo_TextFieldにしました。
- Main.storyboard に TextField を配置
- ViewController.swift に以下のコードを書きます
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {この touchesBegan メソッドは、ViewController が管理する view がタッチされる時呼ばれます。
self.view.endEditing(true)
}
キーボードのリターンをタップしたら閉じる
- 設置した TextField の Outlet を作成。名前は text にしました
- UITextFieldDelegate プロトコルを View Controller に追加
class ViewController: UIViewController, UITextFieldDelegate {
- ViewDidLoad メソッド内で、デリゲートを設定
- リターンキーがタップされた時に呼ばれるメソッドを書く
func textFieldShouldReturn(textField: UITextField) -> Bool {resignFirstResponder メソッドにキーボードを閉じる効用があります。
textField.resignFirstResponder()
return true
}
まとめ
以上2つの方法で、iOSのキーボードを閉じることができます。