从 NSDocument 获取 NSDocumentController
Getting NSDocumentController from NSDocument
我已经对 NSDocumentController 和 NSDocument 进行了子类化。有没有办法从 MyDocument 访问 MyDocumentController?
目前我的 AppDelegate 中有一个连接到 MyDocumentController 的插座,所以我可以通过这种方式进行操作,但想知道是否有更直接接受的方式?
你不需要插座或类似的东西。 NSDocumentController
是一个单例,这意味着只有一个实例管理整个应用程序的文档。因为您的 nib 中有自定义文档控制器,所以它是第一个被实例化的,因此 成为 共享文档控制器。所以你所要做的就是检索共享文档控制器:
在Objective-C中:
MyDocumentController *sharedController = [MyDocumentController sharedDocumentController];
在Swift中:
let sharedController = MyDocumentController.shared()
我已经对 NSDocumentController 和 NSDocument 进行了子类化。有没有办法从 MyDocument 访问 MyDocumentController?
目前我的 AppDelegate 中有一个连接到 MyDocumentController 的插座,所以我可以通过这种方式进行操作,但想知道是否有更直接接受的方式?
你不需要插座或类似的东西。 NSDocumentController
是一个单例,这意味着只有一个实例管理整个应用程序的文档。因为您的 nib 中有自定义文档控制器,所以它是第一个被实例化的,因此 成为 共享文档控制器。所以你所要做的就是检索共享文档控制器:
在Objective-C中:
MyDocumentController *sharedController = [MyDocumentController sharedDocumentController];
在Swift中:
let sharedController = MyDocumentController.shared()