#import "HTMINextViewController.h" #include <objc/runtime.h> #include <objc/message.h>
@interface HTMINextViewController ()
@property (nonatomic, strong) NSTimer *timer;
@property (nonatomic, strong) NSObject *target;
@end
@implementation HTMINextViewController
-
(void)dealloc { [_timer invalidate]; _timer = nil; }
-
(void)viewDidLoad { [super viewDidLoad]; _target = [NSObject new]; _timer = [NSTimer scheduledTimerWithTimeInterval:1 target:_target selector:@selector(fire) userInfo:@"test" repeats:YES];
class_addMethod([_target class],@selector(fire),class_getMethodImplementation([self class], @selector(fire)),"v@:");//(IMP)fireIMP }
void fireIMP(id self, SEL _cmd) { NSLog(@"%@,%@",self,NSStringFromSelector(_cmd)); }
- (void)fire { NSLog(@"timer "); }
@end