第一种:通过键盘内的完成按钮来实现关闭键盘
首先继承 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, 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() }