2016-10-29 79 views
0

我最近升級到最新的Xcode版本並將我的項目轉換爲Swift 2.3。直到2.2,當我顯示UIAlertController我駁回了鍵盤與經典關閉Swift 2.3中的UIAlertController鍵盤

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

那麼,它不工作了。試圖改變textView的UIKeyboardTypereturnKeyType。沒有運氣。有什麼想法嗎?

+1

你檢查過了嗎? http://stackoverflow.com/q/26161796/1689376 – alexburtnik

+0

當警報出現時,「touchesBegan」不會被觸發,因爲警報的背景視圖與您的完整self.view重疊。它與鍵盤一起工作,因爲鍵盤只有一半。 –

+0

alexburtnik:感謝您的鏈接。 Rajan Maheshwari:你是對的。我的UIAlertController太大了,它的控件被鍵盤「預測」模式所隱藏。我收縮它,它運作良好。謝謝。 –

回答

0

嘗試對視圖使用tapGesture識別器。試試這個link

或者你可以嘗試這個代碼:

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

希望這有助於你出去。快樂編碼