いつもお世話になっております。
現在swiftを勉強中の者です。Storyboard上で作成したUITextFieldで編集後にキーボードを閉じる処理を作成しているのですが、編集後にキーボードの完了ボタンを押しても@IBActionで作成したメソッドが呼ばれません...
Delegateはstoryboardで設定しています。
また、@IBActionで作成したメソッドではなく、コードで記述したメソッドは呼ばれてキーボードを閉じることができます。
この違いがわからないのでわかる方いらっしゃれば教えていただけると幸いです。
よろしくお願いいたします。
swift
1import UIKit 2 3class DetailViewController: UIViewController,UITextFieldDelegate{ 4 5 6 @IBOutlet weak var TitleField: UITextField! 7 8 override func viewDidLoad() { 9 super.viewDidLoad() 10 // Do any additional setup after loading the view. 11 //TitleField.delegate = self 12 } 13 14 15 //このメソッドが呼ばれません。(ログすら表示されない) 16 @IBAction func Edit_TitleField(_ sender: UITextField) { 17 print("call Edit_TitleField") 18 TitleField.resignFirstResponder() 19 } 20 21 //このメソッドのコメントアウトを外すと呼ばれます。 22// func textFieldShouldReturn(_ TitleField: UITextField) -> Bool{ 23// print("call textFieldShouldReturn") 24// TitleField.resignFirstResponder() 25// return true 26// } 27 28 29 /* 30 // MARK: - Navigation 31 32 // In a storyboard-based application, you will often want to do a little preparation before navigation 33 override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 34 // Get the new view controller using segue.destination. 35 // Pass the selected object to the new view controller. 36 } 37 */ 38 39} 40 41 42 43 44
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/14 04:35