OS X Cocoa:基于NSDocument的应用程序不保存

时间:2013-01-01 19:04:54

标签: macos cocoa nsdocument

我正在编写一个基于NSDocument的应用程序的奇怪问题。当我第一次创建文档并保存它时,一切正常。但是,当我重新打开文档(工作正常)时,主菜单中的“保存”,“另存为”和“还原为已保存”似乎都没有任何效果。方法

- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError

永远不会被召唤。主菜单“关闭”行为也很奇怪:它关闭主文档窗口,但没有任何辅助窗口。同样,仅在文档打开时才会观察到这种不规则行为;在新创建文档时,单击主菜单中的“关闭”按预期工作。其他菜单项,“打开”项和我自己的自定义项都可以正常工作。

这是一个在Snow Leopard和Lion开发的应用程序,它没有任何问题。我最近升级到Mountain Lion,但我不确定问题是否从那里开始,或者我是否对项目做了些什么来引起这种行为。用于编译应用程序的当前SDK是10.7。

任何信息都将非常感谢,并提前感谢,

下进行。

2 个答案:

答案 0 :(得分:0)

好吧,如果您的应用程序允许,您可以使用Core Data。这肯定会消除这个错误,让你只用绑定来构建你的应用程序。

答案 1 :(得分:0)

好吧,似乎我修好了,但我不知道怎么做。经过调试后,我意识到WindowController确实已经实例化了,所以不是这样。我最终将项目的旧版本与一些最初显示相同行为的新代码相结合,但在某些时候它已经不再存在了。我希望我知道我做了什么来打破并解决它,但我很高兴现在有效!

感谢Moray,我认为现在是时候转向Core Data了。

全心全意,

下进行。