防止自动加载上次打开的文档
Posted
技术标签:
【中文标题】防止自动加载上次打开的文档【英文标题】:Prevent autoloading of last opened document 【发布时间】:2013-11-07 14:44:29 【问题描述】:目前,基于 Cocoa NSDocument 的应用程序的默认行为是打开最后一个自动打开的文档。我怎样才能防止这种情况发生,以便我可以提供自己的行为?
【问题讨论】:
【参考方案1】:我通过将此方法添加到我的 NSDocument 子类来做到这一点:
- (void)addWindowController:(NSWindowController *)aController
//
// Overwritten to reset all window restoration, we do our own.
//
NSWindow *window=[aController window];
if(
[window respondsToSelector:@selector(setRestorationClass:)]
&& [window respondsToSelector:@selector(setRestorable:)]
&& [window respondsToSelector:@selector(invalidateRestorableState)]
)
[window setRestorationClass:Nil];
[window setRestorable:NO];
[window invalidateRestorableState];
[super addWindowController:aController];
IIRC 仅此而已。
【讨论】:
这对我不起作用(我已经检查过代码是否被调用)。以上是关于防止自动加载上次打开的文档的主要内容,如果未能解决你的问题,请参考以下文章