谢谢你的帮助。
核心数据项目。我正在从一个文本文件导入文本,并希望将其显示在一个NSTextView中,它的value绑定已经使用模型键路径text绑定到数组控制器的selection。数组控制器包含我的实体的实例,它有一个名为text的字符串属性。我想为绑定到textView的键值更新arrayController,以便可以保存它。构建时没有错误,但无法正常工作。我该怎么做呢?
id newObject = [arrayController newObject];
[arrayController addObject:newObject forKey:@"text"];
[newObject release];发布于 2011-02-13 13:24:34
arrayController addObject:newObject forKey:@"text";
这是“不起作用的”,因为NSArrayController不会响应这样的消息。数组控制器控制数组,而不是键值映射;它没有可以为其添加对象的键。
反过来,这是因为“array” in Cocoa指的是有序的连续列表,而不是关联数组。Cocoa将键值映射/关联数组称为“dictionary”。
模型键路径就是:要将文本视图绑定到的属性的模型的key path。您似乎已经知道了这一点;我假设您在这里输入了text,因为它就是您在模型中命名的属性。您的绑定是正确的。
但这也意味着“text”与数组控制器无关。它是模型实体的属性,不是控制器的属性。您需要设置模型对象的该属性-在本例中为控制器中的newObject-not。
https://stackoverflow.com/questions/4973419
复制相似问题