基于视图的NSTableView中的每一行的NSViewController?

时间:2012-09-28 01:51:25

标签: cocoa nstableview nsview nsviewcontroller

Cocoa中的常规良好做法要求每个NSView都应拥有自己的NSViewController作为其拥有者。这应该适用于基于视图的NSTableView的每一行,如果是这样,那么初始化和缓存这些NSViewControllers的好策略是什么?

1 个答案:

答案 0 :(得分:2)

在大多数情况下,这将是矫枉过正。 每个 NSView都不需要控制器。那些与模型层无关的视图 - 在这种情况下,调解器/控制器是不必要的?在一个大表中,这将导致可能不需要的控制器对象的扩散。

我会仔细查看文档中提供的TableViewPlayground示例项目。请注意该项目中Apple如何使用构成行的各种视图。特别是,请关注ATComplexTableViewController类及其关联的nib文件。这里,表视图的dataSource返回dataSource本身作为视图和模型之间的中介的视图。