今回の記事を書く理由
初学者に多い気がしますが、UITextFieldで文字を入力した後、キーボードが勝手に閉じてくれないのでそのためのコードを書く必要があります。
意外と何回も調べていたりしていたためメモの代わりに書きます。
今回は説明を交えながら書いてきます。
xcodeでreturnの文字を変更
まずxcodeでreturnの文字を変更することができます。
ソースを追加
全体像
この後説明していきます。
class ViewController : UIViewController, UITextFieldDelegate {
@IBOutlet var textField : UITextField!
override func viewDidLoad() {
super.viewDidLoad()
self.textField.delegate = self
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
}
説明
まず、UITextFieldDelegateを設定します。
class ViewController : UIViewController, UITextFieldDelegate {
}
そうしたらviweDidLoadでデリゲートを書きます。ここでtextFieldのdelegateをselfにまかせます。
override func viewDidLoad() {
super.viewDidLoad()
self.textField.delegate = self
}
そうしたらtextFieldでreturn(Done)が押されたときの挙動を書きます。
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
これで思った通りの動きになるかと思います。
swiftでキーボードの動きが怪しかったら参考にしてみてください。