Cocoa touch iOS不支持Cocoa绑定有什么技术/概念上的原因吗?

Cocoa touch iOS不支持Cocoa绑定有什么技术/概念上的原因吗?,cocoa-touch,ios,cocoa-bindings,Cocoa Touch,Ios,Cocoa Bindings,Cocoa for Mac OS X支持Cocoa绑定技术,减少了视图和模型之间对粘合代码的需求 在cocotron源代码的帮助下,在KVO上的KVC之上重新创建Cocoa绑定似乎是可行的 Cocoa绑定不是SDK的一部分,有什么技术或概念上的原因吗? 我在考虑性能、缺少垃圾收集、缺少来自UI元素的KVC支持(例如UISlider)。桌面上的绑定需要: 所有合适的UI组件,以公开其重要属性的绑定 用于处理选择的NSArrayController基础结构的实现 在iOS上,第2点不再是问题。很少(

Cocoa for Mac OS X支持Cocoa绑定技术,减少了视图和模型之间对粘合代码的需求

在cocotron源代码的帮助下,在KVO上的KVC之上重新创建Cocoa绑定似乎是可行的

Cocoa绑定不是SDK的一部分,有什么技术或概念上的原因吗?
我在考虑性能、缺少垃圾收集、缺少来自UI元素的KVC支持(例如UISlider)。

桌面上的绑定需要:

  • 所有合适的UI组件,以公开其重要属性的绑定
  • 用于处理选择的
    NSArrayController
    基础结构的实现
  • 在iOS上,第2点不再是问题。很少(甚至可能是糟糕的UI设计)有一个主细节视图布局,其中可以进行多个选择。这就是
    NSArrayController
    真正发挥作用的地方

    由于当前的
    NSArrayController
    设计没有扩展到多个节、标题等,UITableView的绑定变得不太实用


    第1点是有用的。但是,要在所有UIKit控件中实现绑定支持,Apple需要做大量工作。我认为这永远不会成为他们实现的足够高的优先级。

    Cocoa绑定早在垃圾收集之前就存在了,所以你可以排除这一点。我创建了一个简单(即没有值转换器)绑定,比如机制:请参阅目前无接口生成器支持中的NSObject+SimpleBindings,但它确实有助于简化代码。虽然来晚了,但别忘了NSTreeController。尽管你可能希望你能(巴·杜姆蒂)。事实上他们确实修好了。但我认为它可以处理tableview部分。此外,当前在编辑模式下模拟多重选择。考虑到触摸界面的局限性(没有修改键),这就是我们所坚持的。但我认为,当你想要编辑过滤列表时,在iPad上安装一个带有主细节的阵列控制器会很棒。我经常将我的
    @properties
    绑定到Mac OS X应用程序UI中的复选框和文本字段。。。能够在iOS中做到这一点真是太好了。我觉得苹果没有包括它的原因可能是因为它们很难调试。。。当你搞乱Cocoa绑定时,你得到的堆栈跟踪在SDK中充满了调用,这使得你很难找出你做错了什么。@ArtOfWarfare请注意,实际上你将控件绑定到了其他东西,而不是反过来roundRe:NSArrayController。为什么NSFetchedResultsController不足以取代NSArrayController?快进到2017年和iPad Pro,iOS 11中仍然没有绑定。。。