当我使用NSArrayController
实例NSManagedObject
时,我的印象是以下内容会为我提供所选对象:
[myArrayController selection]
但是,这给了我一些私有NS Proxy类的实例。
当我使用时:
[[myArrayController selectedObjects] objectAt: 0]
...一切都很好,我有NSManagedObject
的实例。
我理解这些方法的必要性,因为您可能有可以进行多项选择的列表。我不明白为什么selection
没有给我NSManagedObject
的实例。
答案 0 :(得分:8)
它在NSObjectController(NSArrayController继承)的文档中指出此方法返回一个代理对象。
您将能够在代理对象上使用任何KVC方法,但如果您想要任何特定于类的功能,则必须使用上面示例中的第二种方法。正如您所说,这是在没有或多个选择的情况下返回有效对象。