键盘View

- (UIView*)getKeyboardView

{

    UIView *keyboardView =nil;

    NSArray *windows = [[UIApplication sharedApplication] windows];

    for(UIWindow *window in [windows reverseObjectEnumerator])//逆序效率更高,因为键盘总在上方

    {

        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;

}

你可能感兴趣的:(键盘View)