触摸屏时如何在Swift中关闭键盘

时间:2018-05-29 22:46:18

标签: ios swift uiscrollview keyboard dismiss

当我触摸键盘时,我一直试图让键盘解除。我发现了一段似乎有用的代码(有点),但它只有在我没有触及任何其他类型的视图时才有效。我的意思是,我有一个滚动视图占据了屏幕的大部分。如果我点击滚动视图它将消失,但如果我点击滚动视图上的任何位置,则没有任何反应。这是我正在使用的代码段。任何帮助将非常感激。

  override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    self.view.endEditing(true)
}

1 个答案:

答案 0 :(得分:2)

你可以尝试

let singleTap = UITapGestureRecognizer(target: self, action: #selector(self.handleTap(_:)))
singleTap.numberOfTapsRequired = 1
scrollView.addGestureRecognizer(singleTap)

//

@objc func handleTap(_ recognizer: UITapGestureRecognizer) {
    self.view.endEditing(true)
}