似乎永远不会调用完成处理程序块。这意味着保存失败了吗?我在控制台中显示self.document.fileURL
,它显示有效。
[self.document saveToURL:self.document.fileURL forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success) {
// set breakpoint here, but it won't stop
[[[Fetcher alloc]init] fetchImageFromSring:HTTP_REQUEST inContext:self.document.managedObjectContext];
}];
答案 0 :(得分:1)
无论保存是否成功,都应调用完成处理程序块
关于apple
的completionHandlercompletionHandler
包含在保存操作结束时执行的代码的块。该块不返回任何值,并且有一个参数:
成功
如果保存操作成功则为YES,否则为NO 在调用队列上调用此块。
您是否在此行上设置了断点以确保其运行
[self.document saveToURL:self.document.fileURL forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success) {
EDIT
我相信问题可能是您正在使用哪种类型的调试器。 (from this SO question)
确保您使用的是lldb
即使您不更改调试器,也可以始终使用NSLog(@"block is running, save successfully - %d", success)