2011-12-21 4 views
1

all.사용자가 iPad의 iOS5에서 키보드를 분할했는지 확인하는 방법

iPad, iOS5에서 키보드 분리 이벤트를 잡으려고합니다. 나는 모든 키보드 알림 방법을 등록했는데 그게 내가 (외관의 순서대로) 키보드를 분리 할 때 내가 무엇을 얻을 통지의 :

UIKeyboardWillHideNotification UIKeyboardWillChangeFrameNotification UIKeyboardDidHideNotification UIKeyboardDidChangeFrameNotification UIKeyboardDidChangeFrameNotification

그래서, 아니 WillShow 또는 DidShow 알림,하지만 키보드가 여전히 화면에 있습니다.

두 결과의 UIKeyboardDidChangeFrameNotification은 도움이 것 아아, UIKeyboardFrameEndUserInfoKey 키가 동일한 값 (원점 (352 포함, (나는 키보드의 두 부분의 위치를 ​​포함 수도)하지만, 0), 크기 (316, 1024)) 두 알림에 대한.

그래서 질문입니다 : iPad, iOS5에서 분할 키보드 이벤트를 잡는 방법은 무엇입니까?

+0

나는이 http://stackoverflow.com/questions/8100443/has-anyone-found-a-good-way-of-using-the-new-ios5-keyboard-events과 같은 질문이라고 생각 –

+0

놀랍게도 , 이것은 kb 이벤트의 일부가 아닙니다. – user523234

답변

4

키보드를 도킹하면 UIKeyboardWillShowNotification이 발생합니다. 키보드가 분리되거나 도킹되지 않은 경우 키보드 알림이 표시되지 않습니다.

키보드 도킹 경우

UIKeyboardWillShowNotification가 발생되며, 다음이 참이됩니다 키보드 도킹 해제

[[[notification userInfo] valueForKey:@"UIKeyboardFrameChangedByUserInteraction"] intValue] == 1 

경우, UIKeyboardWillHideNotification가 발생 될 것이며, 위의 진술도 마찬가지 일 것이다.

이 정보를 사용하여 내 사용자 인터페이스를 코딩하는 데 충분했습니다.

참고 : 이는 Apple의 가이드 라인을 위반했을 수 있습니다. 확실하지 않습니다.

+0

개인 API가 아니기 때문에 위반 사항이 아닙니다. Apple은 자체 앱에서이를 사용합니다. Numbers에서 분할 키보드 오버레이 용. – manmal

관련 문제