绑定 - 主细节数组控制器

时间:2009-12-15 17:53:29

标签: cocoa binding tableview nsarraycontroller

我真的希望有人可以帮忙解决这个问题,因为我正在学习可可并且遇到了障碍。

我正在尝试模拟简单的扑克锦标赛。目前,我的实体只是一个锦标赛(有一个号码)和一个玩家(有一个名字)。锦标赛有一系列的球员。

我可以绑定两个独立的表视图来显示锦标赛和玩家就好了。但我希望球员桌面视图只显示第一张桌面视图中属于所选锦标赛的球员。

每个人都拥有自己的阵列控制器。我已经为第二个(玩家)表尝试了各种不同的绑定,但无济于事。有没有人完成这个?如果是这样,也许你可以为我拼写,因为我在网上的例子很少。

  • 更新 我现在几乎可以到达我需要的地方,主要是通过里亚尔和错误以及谷歌搜索的时间。我已将玩家AC的内容绑定到锦标赛AC,控制器键为“选定对象”和“模型关键路径”“玩家”,这是我的锦标赛实体中阵列的名称。

我将播放器表视图中的列绑定到此第二个播放器AC,控制器键排列的对象。但是在模型关键路径中应该放什么?我知道这是有效的,因为如果我坚持@count,我会得到所选比赛的正确数量的球员。但'name'和'player.name'并不好。有什么样的'item.name'或'players.item.name'我可以试试吗?

Sooo close,感谢目前为止的帮助: alt text

2 个答案:

答案 0 :(得分:4)

我认为this tutorial会对您有所帮助。他们还创建了主/详细视图。

简而言之:将玩家阵列控制器的contentArray绑定到锦标赛的阵列控制器,将ControllerKey设置为selection,其余属性与您的模型相对应。

答案 1 :(得分:0)

我在这里找到了答案:

Implementing parent->child drill down in Cocoa with Core Data bindings that span multiple entities

  • 子控制器需要通过自己的绑定了解managedObjectContext。
  • 子控制器不能处于实体模式,而应作为NSMutableDictionary类运行。
  • 最后,子控制器不准备其数据。它通过内容集绑定从父级检索它。使用控制器密钥选择以及连接到子项的模型密钥路径。

我很惊讶这不是一种比较常用的做法,希望下一个读这篇文章的人不要花那么长时间找到答案!