【问题标题】:In cocoa, how do you connect the model to viewcontrollers?在可可中,如何将模型连接到视图控制器?
【发布时间】:2010-03-07 20:45:56
【问题描述】:

所以据我了解,可可程序的基本应用程序结构是 MainMenu.xib 中的 AppController。 AppController 然后初始化具有所有 UI 逻辑的 WindowControllers 和 ViewControllers,然后为应用程序的其余部分加载 xib 文件。 AppController 还创建模型类。

我的困惑在于如何将模型类中的数据获取到视图中。我想使用绑定和键值观察。每个视图控制器都应该有一个指向 AppController 和 ModelController 的指针吗?如果是这样,你会怎么做?

[[ViewController alloc] initWithModel:ModelController];

是我能想到的唯一解决方案,而且看起来不是很干净。

【问题讨论】:

    标签: cocoa model-view-controller


    【解决方案1】:

    我制作了一个控制器来创建/加载并拥有模型。我的应用程序委托创建并拥有这个控制器。

    同一个控制器通常也拥有窗口或视图;我很少使用专用的窗口控制器,也从未使用过视图控制器。如果您确实使用窗口/视图控制器,模型控制器也会创建并拥有它们。

    因此,一个控制器负责模型(或模型的某些特定部分)和显示该模型(部分)的窗口(控制器)。

    【讨论】:

      【解决方案2】:

      NSViewController 链接到模型的常用方法是设置其representedObject 值。无需设置指向AppController的指针,始终可以通过[NSApplication sharedApplication].delegate获取。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-09-09
        • 2013-08-28
        • 1970-01-01
        • 1970-01-01
        • 2012-04-11
        • 2020-08-08
        • 2013-10-22
        • 1970-01-01
        相关资源
        最近更新 更多