2011-12-02 60 views
1

我在删除PDF文件之前和之后清除PSPDFDocument缓存的问题。无法清除PSPDFDocument的缓存

这里是我做的:

// ... 
PSPDFDocument *document = [PSPDFDocument PDFDocumentWithUrl:(pdfURL)]; 
[document clearCacheForced:YES]; 

[mManagedObjectContext deleteObject:mPdfDocument]; 
// ... 

当我尝试以清除整个缓存所有PDF,它的工作原理:

// ... 
[[PSPDFCache sharedPSPDFCache] clearCache]; 
// ... 

任何想法?

回答

2

那么,方法名称有点让人误解,PSPDFDocument上的clearCacheForced只是像文档页数,坐标,注释位置一样释放一些内部缓存 - 而不是由PSPDFCache缓存到磁盘的图像内容。您需要拨打

- (void)removeCacheForDocument:(PSPDFDocument *)aDocument deleteDocument:(BOOL)deleteMagazine 

在PSPDFCache中删除缓存的图像。

另请参阅API文档: http://pspdfkit.com/documentation/Classes/PSPDFCache.html#//api/name/removeCacheForDocument:deleteDocument

+1

感谢您的回答。我给你发了一封包含几个问题的电子邮件。 – jackal

0

对于PSPDFKit 4.1.0 +的[PSPDFCache sharedPSPDFCache]已被弃用,请使用:

[[PSPDFKit sharedInstance].cache removeCacheForDocument:self.document deleteDocument:YES error:&error];