別の場所をタップしたらキーボードを閉じる機能を実装してみよう

Blog

 

今回、紹介するのは、textFieldで入力した後にキーボード以外の箇所をタップすればキーボードが閉じる機能を紹介します。

キーボードを閉じる方法は、Returnキーを押して閉じる方法もあります。

 

今回は、別の箇所をタップしたら閉じる方法です。

 

それでは、実際にやっていきましょう。

 

 

UIの設定

 

  • LabelとTextFieldを配置。

 

 

コネクト

 

  • labelをOutlet接続、Nameを「label」。
  • textFieldをOutlet接続。Nameを「textField」。

 

@IBOutlet weak var label: UILabel!

 

@IBOutlet weak var textField: UITextField!

 

 

 

コーディング

 

 

  • UITextFieldDelegateを追加。

  • touchesBeganメソッドの追加。このメソッドで別の箇所をタップすれば、キーボードを閉じる。

 

class ViewController: UIViewController , UITextFieldDelegate {

 

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {

        label.text = textField.text
        self.view.endEditing(true)

   }

 

 

 

 

全コード

 

 

import UIKit

class ViewController: UIViewController , UITextFieldDelegate {
    
    
    @IBOutlet weak var label: UILabel!
    @IBOutlet weak var textField: UITextField!
    

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    
    
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        label.text = textField.text
        self.view.endEditing(true)
        
    }

}

 

 

実行結果

 

 

 

 

いかかでしたか、これで「別の場所をタップしたらキーボードを閉じる機能を実装してみよう[ swift4, xcode9, textfield ]」の説明を終わります。

 

🤗

 

コメント