hook stringWithFormat
网上找了半天, 都是不能直接用的
@implementation NSString (my)
+ (void)initialize {
static dispatch_once_t onceToken;
dispatch_once(&onceToken,^{
Method originalMethod = class_getClassMethod(NSClassFromString( @"NSString" ), NSSelectorFromString( @"stringWithFormat:"));
Method swizzledMethod = class_getClassMethod(NSClassFromString( @"NSString" ), NSSelectorFromString( @"myStringWithFormat:"));
method_exchangeImplementations(originalMethod,swizzledMethod);
});
}
+ (NSString *)myStringWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2) {
va_list args;
va_start(args, format);
NSMutableString * result = [[NSMutableString alloc] initWithFormat:format args];
va_end(args);
return result;
}
@end