我开始在项目中遇到一个奇怪的错误,所以我创建了一个全新的基于文档的项目来测试(在Xcode 4中)。我在Document.xib中添加了一个“文本视图”,并运行了该程序。我设法打开一些新文档,在文本视图中键入一些内容,然后暂停,然后程序终止。它给了我:“程序接收信号”SIGABRT“。
错误位于默认的document.m文件中,方法为:
- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError
在线:
@throw exception
发生了什么事?
PS。我查看了活动监视器,并且所有负载:系统负载,用户负载,在退出之前立即上升。
答案 0 :(得分:0)
来自文档:
此方法的默认实现会引发异常,因为 至少有一种写作方法(这种方法, writeToURL:ofType:error:,fileWrapperOfType:error:,或 writeToURL:ofType:forSaveOperation:originalContentsURL:error :)必须是 重写的。
我的猜测是你没有实现这些方法。我还打赌你在Lion上并启用了自动保护功能(请参阅+ autosavesInPlace),并且当应用程序在触发内部计时器/更改观察器后尝试自动保存时会引发异常。