美文网首页
全局关闭所有键盘、ActionSheet、AlertView

全局关闭所有键盘、ActionSheet、AlertView

作者: 辣条 | 来源:发表于2016-04-07 13:14 被阅读143次

    话不多说,直接上代码

    关闭所有键盘

    - (void)hideKeyBoard

    {

          for (UIWindow* window in [UIApplication sharedApplication].windows){

                  for (UIView* view in window.subviews){

                           [self dismissAllKeyBoardInView:view];

                  }

           }

    }

    -(BOOL) dismissAllKeyBoardInView:(UIView *)view

    {

         if([view isFirstResponder]){

                  [view resignFirstResponder];

                  return YES;

         }

         for(UIView *subView in view.subviews){

                  if([self dismissAllKeyBoardInView:subView]) {

                        return YES;

                 }

         }

        return NO;

    }

    关闭ActionSheet、AlertView

    - (void)closeModalView{

         for (UIWindow* window in [UIApplication sharedApplication].Windows){

                 for (UIView* view in window.subviews){

                       [self dismissActionSheetAndAletrtViewInView:view];

                }

           }

    }

    - (void)dismissActionSheetAndAletrtViewInView:(UIView*)view{

               if ([view isKindOfClass:[UIActionSheet class]]){

                  UIActionSheet *actionView = (UIActionSheet *)view;

         [actionView dismissWithClickedButtonIndex:actionView.cancelButtonIndex animated:NO];

               }else if ([view isKindOfClass:[UIAlertView class]]){

                        UIAlertView *alertView = (UIAlertView *)view;

         [alertView dismissWithClickedButtonIndex:alertView.cancelButtonIndex animated:NO];

               }else{

                     for (UIView* subView in view.subviews){

                             [self dismissActionSheetAndAletrtViewInView:subView];

                    }

              }

    }

    相关文章

      网友评论

          本文标题:全局关闭所有键盘、ActionSheet、AlertView

          本文链接:https://www.haomeiwen.com/subject/dzwmlttx.html