如何以编程方式保存NSDocument?

时间:2016-11-17 14:22:05

标签: swift macos cocoa macos-sierra nsdocument

我需要以编程方式从控制文档视图的NSViewController方法中保存基于NSDocument的应用程序的活动文档。菜单项通过向第一个响应者发送save()来完成此操作。以编程方式执行此操作的最佳方法是什么?我应该A)获取对NSDocument的引用(以某种方式),然后调用save方法或B)向第一个响应者发送save:消息?

1 个答案:

答案 0 :(得分:2)

我说(B)是最容易做到的。您所要做的就是从链中的任何NSResponder调用此行(如您的视图控制器):

NSApp.sendAction(#selector(NSDocument.save(_:)), to: nil, from: self)

这与选择" Save"具有完全相同的效果。从菜单栏。