将文档数据传递到yosemite中的视图控制器(故事板)

时间:2015-01-23 18:11:01

标签: swift storyboard osx-yosemite nsdocument

您应该何时将文档或文档数据传递给viewcontrollers?它不能在prepareForSegue中完成,因为没有为属于包含/关系序列的视图控制器调用此函数。

也不在windowControllerDidLoadNib中,因为并不总是调用它。

1 个答案:

答案 0 :(得分:3)

我目前的做法是:

  1. 子类NSDocument并覆盖makeWindowControllers以将文档实例传递给窗口控制器。
  2. 子类NSWindowController并覆盖windowDidLoad以将文档(或任何其他类型的数据)传递给contentViewController。
  3. 将NSViewController子类化以处理数据和/或将其传递给childViewControllers。

  4. 如果在另一个NSViewController中发生了某些变化(如选择),则使用通知来通知NSViewControllers。