第一种:通过键盘内的完成按钮来实现关闭键盘
首先继承 UITextFieldDelegate
以输入框 textField举例,执行以下代码
title_textField.delegate = self
title_textField.returnKeyType = UIReturnKeyType.done
键盘输入时会出现完成按钮,如图
执行以下方法便可触发点击完成的事件
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
title_textField.resignFirstResponder()
return true
}
第二种:在键盘上方加一个 UIToolbar,触发 UIToolbar事件执行关闭
效果如图,右上角
定义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()
}