2011-12-16 87 views
1

创建UIDocument(XDocument)的子类,由于大量数据,需要一些保存以保存文档。关闭UIDocument后停止自动保存

所以,当我关闭XDocument实例与closewithcompletionhandler并成功关闭并返回到成功的块,但观察一段时间后,该文件被成功关闭后autosavewithcompletionHandler被调用。 我是否在关闭文档之前缺少任何参数? 在关闭UIDocument子类之前应该采取哪些预防措施?

感谢您的任何帮助和赞赏。

回答

0

我不知道这是否是最好的答案,但我最终做的是关闭文档,然后在完成处理程序中删除它。例如:

NSURL *url = _document.fileURL; 
[_document closeWithCompletionHandler:^(BOOL success) { 
    if (success) { 
     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
      NSFileCoordinator *coordinator = [[NSFileCoordinator alloc] initWithFilePresenter:nil]; 
      [coordinator coordinateWritingItemAtURL:url options:NSFileCoordinatorWritingForDeleting error:NULL byAccessor:^(NSURL *newURL) { 
       [[NSFileManager defaultManager] removeItemAtURL:newURL error:NULL]; 
      }]; 
     }); 
    } 
}];