2010-12-15 51 views
0

我目前正在从Apple's Mac Dev site开始一个web浏览器项目。在基于可可文档的应用程序中删除保存功能

我已经完成了项目,但有点问题。我已经将该项目创建为基于文档的可可应用程序,现在无论何时在网络上的任何文本字段中输入文本,红色交通灯按钮在中间显示一个黑点,表示未保存的文档。当我尝试关闭窗口或完全退出应用程序时,会在TextEdit或Pages中弹出警告,提醒我未保存的更改。这不是一个太大的问题,但我想如果有人可以请告诉我如何删除Cocoa基于文档的应用程序的功能。

回答

2

为什么基于文档的应用程序如果您的应用程序不是基于文档的?基于文档的应用固有地包括opensave的概念;它是它们的基本组成部分。

在任何情况下,您可以可以“通过适当配置NSDocument”来解决此问题;覆盖正确的方法,否则将改变文档的脏状态&。但这只是一种解决方法。 NSDocument的文档包含您需要的所有信息。

一个更清洁的整体解决方案将是重构您的应用程序不使用NSDocument。在Cocoa中创建多个窗口非常简单(一种操作方法与操作方法加载nib文件的菜单项绑定;如果我没有记错,您甚至可以使用NSWindowController)。

1

一个简单的解决方案就是覆盖isDocumentEdited方法总是返回NO。

- (BOOL)isDocumentEdited { 
    return NO; 
} 
相关问题