OC动态修改Icon,弹窗消除

2021-07-24  本文已影响0人  囚你于无期_99bb

#import "UIViewController+Present.h"

#import

@implementation UIViewController (Present)

+ (void)load{

    staticdispatch_once_tonceToken;

    dispatch_once(&onceToken, ^{

        MethodsystemM =class_getClassMethod(self,@selector(presentViewController:animated:completion:));

        MethodzxxM =class_getClassMethod(self,@selector(zxx_presentViewController:animated:completion:));

        //方法替换

        method_exchangeImplementations(systemM, zxxM);

    });

}

- (void)zxx_presentViewController:(UIViewController*)viewControllerToPresentanimated:(BOOL)flagcompletion:(void(^)(void))completion {

    if([viewControllerToPresentisKindOfClass:[UIAlertControllerclass]]) {

        UIAlertController*alertController = (UIAlertController*)viewControllerToPresent;

        if(alertController.title==nil&& alertController.message==nil) {

            return;

        }else{

            [selfzxx_presentViewController:viewControllerToPresentanimated:flagcompletion:completion];

            return;

        }

    }

    [selfzxx_presentViewController:viewControllerToPresentanimated:flagcompletion:completion];

}

上一篇 下一篇

猜你喜欢

热点阅读