OC动态修改Icon,弹窗消除
#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];
}