//FUNCTION TO DISMISS THE KEYBOARD
func initializeHideKeyboard(){
//Declare a Tap Gesture Recognizer which will trigger our dismissMyKeyboard() function
let tap: UITapGestureRecognizer = UITapGestureRecognizer(
target: self,
action: #selector(dismissMyKeyboard))
//Add this tap gesture recognizer to the parent view
view.addGestureRecognizer(tap)
}
@objc func dismissMyKeyboard(){
//endEditing causes the view (or one of its embedded text fields) to resign the first responder status.
//In short- Dismiss the active keyboard.
view.endEditing(true)
}
6条答案
按热度按时间ubbxdtey1#
向视图添加点击手势识别器的最佳方法是调用resignFirstResponder()或self.view.endEditing(true)。我更喜欢endEditing(),因为resignFirstResponder必须为每个文本字段单独完成,而不像endEditing那样为视图本身完成。
在viewDidLoad中,编写以下代码:
现在编写didTapView方法来关闭键盘:
现在,当您在控制器的主视图上点击键盘外部时,它将调用didTapView方法并关闭键盘。
Swift 3.x
viewDidLoad中的代码应为:
其中ViewController应该是视图控制器的名称。
谢谢
qaxu7uf22#
Swift 3已测试并运行
享受
Swift 2.3已测试并运行
享受
11dmarpk3#
您也可以使用此方法在按“Return”时关闭键盘
确保设置您的代理
iecba09b4#
如果您不想定义额外的方法,有一个稍微简单的方法也可以工作
ndasle7k5#
我在一个网站上找到了这段代码,它对我来说很好用!
然后在按钮动作或类似动作中调用此函数:
pgx2nnw86#
SWIFT 5