第一種:通過鍵盤內的完成按鈕來實現關閉鍵盤
首先繼承 UITextFieldDelegate
以輸入框 textField舉例,執行以下代碼
title_textField.delegate = self
title_textField.returnKeyType = UIReturnKeyType.done
鍵盤輸入時會出現完成按鈕,如圖
99459FD3-206A-4B6C-841D-A21E9F503516.png
執行以下方法便可觸發點擊完成的事件
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
title_textField.resignFirstResponder()
return true
}
第二種:在鍵盤上方加一個 UIToolbar,觸發 UIToolbar事件執行關閉
效果如圖,右上角
94A0058D-1576-40E0-A7B1-50F8F422AE47.png
定義UIToolbar
let toolbar:UIToolbar = UIToolbar(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 30))
let flexSpace = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil)
let doneBtn: UIBarButtonItem = UIBarButtonItem(title: "完成", style: .done, target: self, action: #selector(doneButtonAction))
toolbar.setItems([flexSpace, doneBtn], animated: false)
toolbar.sizeToFit()
//對輸入框進行設置
title_textField.inputAccessoryView = toolbar
觸發事件
func doneButtonAction() {
title_textField.resignFirstResponder()
}