UI美化
正常情况下,只要触摸焦点放在输入框如textField/textView上,自动会弹出键盘,所以,隐藏键盘的最终方法就是让控件失去焦点。
textField.resignFirstResponder()
textView.resignFirstResponder()
用例一.TextField按Enter键隐藏
实现委托UITextFieldDelegate 方法
func textFieldShouldReturn(textField:UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
用例二.点击其他任意地方隐藏(不适用于tableView)
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
textField.resignFirstResponder()
}
用例三.点击手势隐藏(不适用于tableview,涉及cell点击冲突)
//声明隐藏虚拟键盘的操作
let hideTap = UITapGestureRecognizer(target: self, action: #selector(hidekeyboardTap(recognizer:)))
hideTap.numberOfTapsRequired = 1
self.view.isUserInteractionEnabled = true
self.view.addGestureRecognizer(hideTap)
//隐藏视图中的虚拟键盘
func hidekeyboardTap(recognizer:UITapGestureRecognizer) {
self.view.endEditing(true)
}
用例四.滚动tableView隐藏
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
textField.resignFirstResponder()
}
浙公网安备 33010602011771号