iOS Runtime 获取成员变量

首先包含runtime头文件

#import 

以UITextField为例
1.遍历所有成员变量

+ (void)initialize
{
      unsigned int count = 0;
    
    // 拷贝出所有的成员变量列表
    Ivar *ivars = class_copyIvarList([UITextField class], &count);
    
    for (int i = 0; i

2.遍历所有属性

+ (void)initialize
{
    unsigned int count = 0;
    
    objc_property_t *properties = class_copyPropertyList([UITextField class], &count);
    
    for (int i = 0; i   %s", property_getName(property), property_getAttributes(property));
    }
    
    free(properties);
}

你可能感兴趣的:(iOS Runtime 获取成员变量)