具有多个详细信息表视图的主详细信息界面,如Mail.app

时间:2012-02-06 10:42:39

标签: cocoa nstableview nsarraycontroller nsoutlineview master-detail

我有一个Cocoa应用程序,其布局类似于Mail.app:

  • 左侧的源列表,用户可以从中选择多个条目之一
  • 主要内容区域中的详细表格视图,显示基于左侧所选项目的列表

我希望详细表格视图中的选择能够为每个主项目单独维护。

目前我只有一个详细信息表视图和一个数组控制器。当主选择更改时,我更新详细数组控制器的contents绑定。

我想我可能需要多个详细的数组控制器 - 主列表中的每个条目都有一个。

是否有更简单的方法/推荐模式来执行此操作?

1 个答案:

答案 0 :(得分:0)

每个表都需要一个数组控制器。对于每个详细数组控制器,您需要将contents绑定绑定到主数组控制器的selectedObjects键。

因此,如果您有三个阵列控制器masterdetail1detail2,那么content的{​​{1}}绑定应设置为{{1使用detail1的关键路径。

master的{​​{1}}绑定应设置为selectedObjects,同时使用content的关键路径。

您无需以编程方式更改detail2绑定。