1. runtime

1.1. Method

1.1.1. class_copyMethodList

拷贝类的所有方法

  • 不会取父类的方法

1.1.2. method_getTypeEncoding

获取方法的返回值和参数类型

1.1.3. NSMethodSignature

SEL selector = method_getName(method);
NSMethodSignature *signature = [class instanceMethodSignatureForSelector:selector];

NSUInteger numberOfArguments = [signature numberOfArguments];

for (int i=0 ; i<numberOfArguments ; i++)
{
    // 参数类型
    NSString *type = [NSString stringWithUTF8String:[signature getArgumentTypeAtIndex:i]];
    NSLog(@"type:%@", type);
}

results matching ""

    No results matching ""