我正在寻找在对象头中声明的顺序获取对象的成员类型名称的方法。
例如,如果我得到这样的对象
@interface Person : NSObject {
int age;
NSString *name;
PersonDetail *detail;
}
当我在数组中获得{28,@"Jack",{@"basketball",@"Male",@"Master Degree"}}
之类的数据时。
我需要成员类型来填充数据。
就像在java中有一个像getField()这样的函数来按顺序获取成员。
那么我可以使用任何方法吗?
感谢。
答案 0 :(得分:1)
查看Objective-C Runtime Reference。它包括用于执行诸如获取类的ivar列表(class_copyIvarList()
)或获取对象实际ivars(object_getIndexedIvars()
)等功能的函数。它应该能够做你想要的事情。
答案 1 :(得分:0)
您可以按以下方式检查上述对象的类型:
if( [person isKindOfClass:[Person class]])
{
//add your logic here
}