runtime-获取类的所有成员变量

2017-11-24  本文已影响10人  Jerky_Guo

首先导入#import <objc/runtime.h>

#pragma mark - 获取类的所有成员变量
- (NSArray *)getClassIvars {
    
    NSMutableArray *mutArr = [NSMutableArray array];
    
    unsigned int outCount;
    
    /** 第一个参数:要获取哪个类的成员变量
     * 第二个参数:获取到该类的成员变量的数量
     */
    Ivar *ivarList = class_copyIvarList([UIView class], &outCount);
    
    // 遍历所有属性列表
    for (int i = 0; i<outCount; i++) {
        const char *name = ivar_getName(ivarList[i]);
        [mutArr addObject:[NSString stringWithUTF8String:name]];
    }
    return [NSArray arrayWithArray:mutArr];
}
上一篇 下一篇

猜你喜欢

热点阅读