在iOS应用中使用Objective c运行时函数

时间:2011-07-31 15:29:55

标签: iphone objective-c ios properties runtime

我想了解我的目标C类的属性类型。我看到我可以通过使用运行时函数property_getAttributes(property)来执行此操作,该函数返回如下的C字符串:

    T@"UIColor",&,N,VsomeColor_   // ivar was UIColor* someColor_; property was (nonatomic, retain) UIColor* someColor; 

或者这个:

    Tf,N,vfontSize_   // ivar was CGFloat fontsize_; property was (nonatomic) CGFloat fontSize;

然后我可以解析该字符串,即在初始T之后和下面的逗号之前查看该部分。

我的问题是 - 这样做可能会稳定吗?或者有更好的方法吗?

1 个答案:

答案 0 :(得分:2)

property_getAttributes是Objective-C运行时的一部分,如here所述。

如果你想获得关于ObjC课程的某种内省,那就是要走的路。我不认为这是不稳定的,因为Objective-C运行时本身非常稳定。此外还有一个官方指南(见上面的链接),因此您可以相信它与任何其他官方Apple API一样稳定。