创建person类.h
#import <Foundation/Foundation.h>
@interface Person : NSObject
@end
.m
#import <Foundation/Foundation.h>
#import "Person.h"
#import <objc/message.h>
@implementation Person
+(BOOL)resolveInstanceMethod:(SEL)sel{
NSString *selName = NSStringFromSelector(sel);
if ([selName isEqualToString:@"run:"]) {
class_addMethod(self, sel, (IMP)runrun, "V@:@");
return YES;
}
return NO;
}
void runrun(id self,SEL _cmd,NSNumber *meter){
NSLog(@"跑了%@",meter);
}
@end
外界调用:
- (void)buttonDidClick{
// [self blockTestTwo];
Person *person = [[Person alloc] init];
[person performSelector:@selector(run:) withObject:@10];
}