2016-07-19 11 views
0

我有一个iOS应用程序中的选项卡,可以显示表格视图,还可以添加一个键盘让您添加更多内容。我想要一种设置手势识别器的方法,这样,如果您在空白处单击任何位置,它将会关闭键盘,但是,如果您单击图像或任何包含内容的图像,它仍然会允许执行这些操作。关闭键盘,但也允许在iOS Swift中的其他操作?

当我设置手势轻触识别器,它似乎接管所有的事件,虽然它取消了键盘,当我点击图像时,这些行动都没有解决。有任何想法吗?我正在使用Swift。

+0

你能告诉我们一些代码也在tapgesturerecognizer你为什么不将它设置为self.view这样的话,如果被按下的图像是而不是视图本身 – Konsy

+0

在控制器视图上实现'touchesBegan'并在其中调用'endEditing(true)'。或者使用轻触识别器,并在其代表中您可以决定何时应该接触触摸。 – Sulthan

+0

请参阅此网址:: [dismiss-keyboard-on-touch-anywhere-outside-uitextfield](http://stackoverflow.com/questions/11274119/dismiss-keyboard-on-touch-anywhere-outside-uitextfield) – Chandan

回答

1

添加这里面viewDidLoad()工作对我来说(SWIFT 3):

let tap = UITapGestureRecognizer(target: self.view, action: #selector(UIView.endEditing(_:))) 
tap.cancelsTouchesInView = false 
self.view.addGestureRecognizer(tap) 
相关问题