代码之家  ›  专栏  ›  技术社区  ›  Brandon

CGPDFDocumentRelease()使应用程序崩溃,错误地说已经释放

  •  0
  • Brandon  · 技术社区  · 14 年前

    我正在为iOS编写PDF查看器。当我初始化viewcontroller时,我获得了对pdf的引用,

    pdf = CGPDFDocumentCreateWithURL((CFURLRef)pdfURL);
    

    CGPDFPageRef pageRef = CGPDFDocumentGetPage(pdf, docPage);
    

    子视图控制器使用这些页,并在解除锁定时释放它们。但是,当我尝试释放pdf本身(使用CGPDFDocumentRelease)时,会得到以下错误:

    [Not A Type release]: message sent to deallocated instance
    

    1 回复  |  直到 14 年前
        1
  •  5
  •   tia    14 年前

    你不能释放 pageRef 如果你没有保留它。即使保留了它,如果文档本身被释放,它也可能不可用。因此,您可能需要在子视图控制器中保留页面和文档,并相应地释放它们。

    推荐文章