2012-06-28 15 views
1

我想知道我的鍵盤何時會隱藏,以滾動到我的視圖的頂部。如何知道鍵盤隱藏的時間?

當我使用textFieldDidEndEditing時,它不起作用,當我不編輯文本字段的內容,但沒有其他方式。

感謝您的建議

回答

4

添加像這樣的觀察:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidHide:) name:UIKeyboardDidHideNotification object:nil]; 

處理這樣的事件:

- (void)keyboardDidHide:(NSNotification *)notification { 
    NSLog(@"Keyboard did hide"); 
} 
1
- (BOOL)textFieldShouldReturn:(UITextField *)textField 

返回值

是文本字段應該實現對返回按鈕的默認行爲;否則,否。

爲了真正隱藏鍵盤,你需要調用

[textField resignFirstResponder]; 
2

您應該使用UIKeyboardWillHideNotification找出來的時候,鍵盤會隱藏。還有其他DidHide,WillShow和WillHide的通知。您可以根據這些通知進行UI更改,而不是隻從文本字段中查看更改。蘋果有documentation on how to respond to keyboard events,你也應該看看。

+3

小心:這不火,如果鍵盤是一個分離式鍵盤在iPad('keyboardDid/WillShow '也不要爲分離鍵盤開火)。 – fzwo