- (UIView*)getKeyboardView
{
? ? UIView *keyboardView =nil;
? ? NSArray *windows = [[UIApplication sharedApplication] windows];
? ? for(UIWindow *window in [windows reverseObjectEnumerator])//逆序效率更高阔加,因?yàn)殒I盤總在上方
? ? {
? ? ? ? keyboardView = [self findKeyboardInView:window];
? ? ? ? if(keyboardView)
? ? ? ? {
? ? ? ? ? ? return keyboardView;
? ? ? ? }
? ? }
? ? return nil;
}
- (UIView*)findKeyboardInView:(UIView*)view
{
? ? for(UIView *subView in [viewsubviews])
? ? {
? ? ? ? if (strstr(object_getClassName(subView), "UIKeyboard"))
? ? ? ? {
? ? ? ? ? ? return subView;
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? UIView *tempView = [self findKeyboardInView:subView];
? ? ? ? ? ? if(tempView)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? return tempView;
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? return nil;
}