2015-02-23 53 views
1

我在我的應用程序中有導航控制器和工具欄。在工具欄中是通過動作「顯示細節」顯示錶格視圖控制器的條形項目。當我點擊取消並且該表視圖關閉時,但鍵盤一直等到表視圖控制器完全關閉。我想用Table View關閉鍵盤。如何隱藏沒有動畫的鍵盤(或加速這個動畫)

這是我的取消按鈕操作:

@IBAction func cancelTapped(sender: AnyObject) { 

    self.nameTextField.becomeFirstResponder() 
    self.caffeineTextField.becomeFirstResponder() 
    self.dismissViewControllerAnimated(true, completion: nil) 

} 

回答

2

您正在文本框FirstResponder所以keybord將繼續開放。你應該從這些resignfirstResponder。有些關閉鍵盤的其他優秀解決方案是:

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    [[self view] endEditing:YES]; 
} 
+0

您的解決方案grat,我會使用它。 resignFirstResponder也起作用。非常感謝你 self.view.endEditing(true) – Lachtan 2015-02-23 11:47:17

+1

我不是類似於swift,但你也可以找到touchesBegan事件。基本上,當你在文本字段以外的地方點擊時,它會關閉鍵盤。 – kocakmstf 2015-02-23 12:13:33

+0

我用連接到整個視圖的輕拍手勢識別器來實現這種效果:) – Lachtan 2015-02-23 14:38:22