2016-07-19 35 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) 
相關問題