为已定义的NSObject类动态创建@property



可能重复:
目标c中的动态特性
如何在运行时向对象添加属性?

有没有一种方法可以在iOS中动态地在运行时创建属性?

我在这里做一些实验,只是想看看这是否可能?

谢谢。

属性被映射到方法,因此您可以像使用-[NSObject forwardInvocation:]和-[NSOobject methodSignatureForSelector:]动态添加方法一样动态添加属性,尽管您必须使用方法语法来调用这些方法,如果您想使用基元类型属性,这可能会变得复杂。

您可以使用ivar和方法动态生成类型,但无法通过一个或两个运行时调用获得声明属性的所有功能。

一些函数应该是完成通用例程所需的全部,但一个完整的实现需要一些工作和一些语法噪音。

最新更新