0

我有一个NSString *str = @"abc"和一个对象,它有一个名为“abc”的属性。如何使用“str”访问该属性。我知道我必须使用objective-c 运行时,但不知道它是否可能。我不想设置该属性,而是想使用该属性,例如如果propert 'abc' 是一个数组,而不是我想向该数组添加一个对象。我经历过

这个链接,发现重新开始没什么帮助。

4

2 回答 2

3

为此,您将需要使用键值编码

本文档描述了NSKeyValueCoding非正式协议,该协议定义了一种机制,允许应用程序通过名称(或键)间接访问对象的属性,而不是直接通过调用访问器方法或作为实例变量。

于 2013-06-14T04:52:11.360 回答
2

您可以通过调用仅给定字符串来访问给定属性valueForKey:。但是,如果您希望更改与该键关联的数组,则调用mutableArrayValueForKey:将使您能够访问一个数组,该数组调用原始对象上的适当 mutator 方法(甚至给您对象本身,但这些是实现细节)当你改变它时。

于 2013-06-14T04:53:50.870 回答