Cocoa NSArrayController';声明了什么绑定?
绑定NSArrayController时,我在控制器内容选项卡下看到以下绑定Cocoa NSArrayController';声明了什么绑定?,cocoa,cocoa-bindings,Cocoa,Cocoa Bindings,绑定NSArrayController时,我在控制器内容选项卡下看到以下绑定 内容数组 用于多重选择的内容数组 内容对象 内容集 但是,我在中找不到这些选项,也找不到实际的NSArrayController.h本身。他们来自哪里?它们与arrangedObject属性有何不同 下面的屏幕截图 它们在中,并且没有在任何头文件中公开声明。Xcode对它们的了解被烘焙到Xcode中,可能在它附带的某个插件中 它们与arrangedObject属性有何不同 排列对象(复数)是一个输出。阵列控制器排列
- 内容数组
- 用于多重选择的内容数组
- 内容对象
- 内容集
NSArrayController.h
本身。他们来自哪里?它们与arrangedObject
属性有何不同
下面的屏幕截图
它们在中,并且没有在任何头文件中公开声明。Xcode对它们的了解被烘焙到Xcode中,可能在它附带的某个插件中
它们与arrangedObject
属性有何不同
排列对象
(复数)是一个输出。阵列控制器排列其内容对象,其结果是排列的对象
绑定是输入:
是主要的,因为它是一个数组控制器contentArray
是将核心数据绑定到多个关系(即集合)的替代方法。我不确定它是否适用于有序集;当集合未排序时,contentSet
和清单在arrangeObjects:
中使用的顺序由数组控制器的排序描述符确定arrangedObjects
,您通常不需要。Cocoa绑定参考中对您确实需要它的情况进行了很好的描述contentArrayForMultipleSelection
正如CBR所说,是另一个数组控制器。同样,请参阅文档,了解您何时需要它contentObject
内容来自一个(或多个)内容绑定,通过
arrangeObjects:
排列(根据阵列控制器可能具有的任何排序描述符),然后在arrangedObjects
超级清除下以指定顺序提供,明白了!谢谢顺便问一下,有没有一种方法可以声明类中哪些是可绑定的,哪些是不可绑定的?@Tony:没有。您所能做的就是在标题中的注释中(或在单独的文档中)记录它。我认为“exposeBinding”方法可以让Xcode知道它可以绑定到某些东西。@Tony:不。至少在我上次尝试时,Xcode没有检测到来自exposeBinding:
消息的绑定。(当然,它不知道提供哪些选项,因为这取决于是否/如何实现bind::
)