我完全陷入困境。这段代码:
NSFileManager *fileManager=[NSFileManager defaultManager];
NSURL *documentURL=[fileManager URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:YES error:nil];
documentURL = [documentURL URLByAppendingPathComponent:@"TrackerDB"];
self.document = [UIManagedDocument alloc];
self.document = [self.document initWithFileURL:documentURL];
产生此错误: *由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'* - [__ NSArrayM insertObject:atIndex:]:object不能为nil'
(我把alloc和init分成了两行,所以我可以看到它在哪里吹。当我点击“踏入”时,它就是炸弹的initWithFileURL。)
顺便说一下, self.document是@property (strong,nonatomic) UIManagedDocument *
,URL是:
@ “的文件://localhost/Users/rick/Library/Application%20Support/iPhone%20Simulator/6.1/Applications/3FEA801E-9279-45A7-9606-853124A111C4/Documents/TrackerDB”
完全符合预期。所以,正如我所说,我很困惑。我错过了一些明显的东西吗?
答案 0 :(得分:0)
由于你得到的错误与将nil指针传递给NSMutableArray方法有关,而你在这里没有使用数组,我想这个问题很可能不是你的代码。我也读过它并且找不到问题。这个问题最有可能发生在你的模拟器上,它可能会不时出现问题。重置设置并创建新构建是个好主意。该问题处理得很好here,并且在使用Core Data时与此相同的问题直接相关。