我想了解我的目标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之后和下面的逗号之前查看该部分。
我的问题是 - 这样做可能会稳定吗?或者有更好的方法吗?
答案 0 :(得分:2)
property_getAttributes
是Objective-C运行时的一部分,如here所述。
如果你想获得关于ObjC课程的某种内省,那就是要走的路。我不认为这是不稳定的,因为Objective-C运行时本身非常稳定。此外还有一个官方指南(见上面的链接),因此您可以相信它与任何其他官方Apple API一样稳定。