swift 关闭键盘的两种方法
2017-08-14 本文已影响0人
昨天的李小白
第一种:通过键盘内的完成按钮来实现关闭键盘
首先继承 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()
}