2012-06-28 2 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 

반환 값

YES 텍스트 필드에 리턴 버튼의 기본 동작을 구현해야하는 경우; 그렇지 않으면 아니오. 실제로 키보드를 숨기기 위해

, 당신은 당신이 키보드를 숨길 때 알아 UIKeyboardWillHideNotification를 사용해야합니다

[textField resignFirstResponder]; 
2

를 호출해야합니다. DidHide, WillShow 및 WillHide에 대한 다른 알림이 있습니다. 텍스트 필드에서만 변경된 내용을 보지 않고 이러한 알림에 대한 응답으로 UI를 변경할 수 있습니다.

애플은 documentation on how to respond to keyboard events도 가지고 있어야합니다.

+3

주의 : 키보드가 아이 패드 (에 분할 키보드 인 경우이 발생하지 않는'keyboardDid/WillShow '분할 키보드에서는 발사되지 않습니다). – fzwo

관련 문제