2013-07-12 3 views
0

Я пытаюсь открыть PDF-файл в моем приложении с обычаем UIBarButtonItem в UINavigationBar, два варианта, чтобы открыть PDF в IOSIOS открытия PDF

-UIDocumentInteractionController 
-QLPreviewController 

в IOS6 я нашел сообщения с доказать, что мы не можем настроить UINavigationBar

Custom navigationItem button with QLPreviewController in iOS6
QLPreviewController remove or add UIBarButtonItems
http://www.cimgf.com/2012/07/11/a-better-fullscreen-asset-viewer-with-quicklook/
Custom "Email" action in UIDocumentInteractionController

"iOS6 Update Этот метод переопределяет QLPreviewController больше не будет работать в iOS 6. Я связался с Apple, о ситуации, но они просто не указано, что он больше не поддерживается, и это считается частным API» есть любой другой способ открыть PDF в IOS без использования UIWebView и настроить UIBarButtonItem.

ответ

1

я не знаю, что именно вы хотите сделать с PDF, но вы можете открыть файл PDF из пакета, используя код вроде этого:

CGPDFDocumentRef pdfDoc; 
CGPDFPageRef pdfPage; 

NSURL* pdfURL = [[NSBundle mainBundle] URLForResource:@"filename" withExtension:@"pdf"]; 

CFURLRef urlRef = (__bridge CFURLRef)pdfURL; 
pdfDoc = CGPDFDocumentCreateWithURL(urlRef); 

if (pdfDoc == NULL) { 
    // Not good 
} 

if (CGPDFDocumentIsEncrypted (pdfDoc)) { 
    if (!CGPDFDocumentUnlockWithPassword (pdfDoc, "")) { 
     if (!CGPDFDocumentUnlockWithPassword (pdfDoc, "password")) { 
         // Not good, document is locked 
     } 
    } 
} 

if (!CGPDFDocumentIsUnlocked (pdfDoc)) { 
    CGPDFDocumentRelease(pdfDoc); 
} else { 
    pdfPage = CGPDFDocumentGetPage(pdfDoc, 1); 
    CGPDFPageRetain(pdfPage); 
    // ... 
} 

с этого момента на документаций от Apple, должно помочь вам :

Quartz 2D Programming Guide

Core Graphics Framework Reference