在 swift 中以编程方式从所有视图层次结构中关闭键盘
dismiss keyboard from all view hierarchy programmatically in swift
我有如下截图所示的视图控制器。
当我触摸文本字段时,键盘出现。
我想在任何屏幕上点击、拖动时关闭键盘。
我试图将此代码放入 viewcontroller,但不起作用。
func dismissKey() {
let tap: UITapGestureRecognizer = UITapGestureRecognizer( target: self, action: #selector(dismissKeyboard))
tap.cancelsTouchesInView = false
addGestureRecognizer(tap)
}
@objc func dismissKeyboard() {
endEditing(true)
resignFirstResponder()
}
但是如果我将此代码放入自定义单元格 class 中键入 1,它只会在我点击此单元格时关闭键盘。
如何在触摸任何屏幕时关闭键盘?
如果您想在 UIViewController
中关闭键盘,请尝试:
@objc func dismissKeyboard() {
view.endEditing(true)
resignFirstResponder()
}
我有如下截图所示的视图控制器。
当我触摸文本字段时,键盘出现。 我想在任何屏幕上点击、拖动时关闭键盘。
我试图将此代码放入 viewcontroller,但不起作用。
func dismissKey() {
let tap: UITapGestureRecognizer = UITapGestureRecognizer( target: self, action: #selector(dismissKeyboard))
tap.cancelsTouchesInView = false
addGestureRecognizer(tap)
}
@objc func dismissKeyboard() {
endEditing(true)
resignFirstResponder()
}
但是如果我将此代码放入自定义单元格 class 中键入 1,它只会在我点击此单元格时关闭键盘。
如何在触摸任何屏幕时关闭键盘?
如果您想在 UIViewController
中关闭键盘,请尝试:
@objc func dismissKeyboard() {
view.endEditing(true)
resignFirstResponder()
}