2015-10-15 5 views
2

Я использую UIDocumentInteractionController presentOptionsMenuFromBarButtonItem, чтобы открыть PDF-файл в приложении Adobe Reader, отправить его с помощью Mail и распечатать его. Почта и печать работают нормально, но я не могу открыть какое-либо другое приложение. Я попробовал presentOpenInMenuFromBarButtonItem и UIActivityViewController, но ни один из них не делает все, что мне нужно.UIDocumentInteractionController presentOptionsMenuFromBarButtonItem не открывает приложение

Я попытался открыть Adobe Reader с помощью документаInteractionController: willBeginSendingToApplication: делегировать, но я не могу найти способ передачи PDF в приложение. Является ли это возможным?

Если нет, есть ли другой способ открыть PDF-файл в приложении Adobe Reader, отправить его с помощью Mail и распечатать его?

Благодаря

+0

Что случилось с UIActivityController? – rmaddy

ответ

2

Обычно это, как я делаю:

NSURL *documentsDirectoryPath = [NSURL fileURLWithPath:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject]]; 

    NSURL *URL =[documentsDirectoryPath URLByAppendingPathComponent:@"your pdf"]; 

    UIButton *button = (UIButton *)nil; 
    self.documentInteractionController.delegate=self; 
    if (URL) { 
     // Initialize Document Interaction Controller 
     self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:URL]; 
     // Configure Document Interaction Controller 
     [self.documentInteractionController setDelegate:self]; 
     //preview 
     [self.documentInteractionController presentPreviewAnimated:YES]; 
     // Present Open In Menu 
     [self.documentInteractionController presentOpenInMenuFromRect:[button frame] inView:self.view animated:YES]; 

    } 
+0

Спасибо за ваш ответ, но presentOpenInMenuFromRect работает только с другими приложениями (Adobe Reader открывается без каких-либо проблем). Он не показывает никакой возможности отправить документ по почте или распечатать его. – olivierplante

+0

проверить это: http: //stackoverflow.com/questions/23336363/uidocumentinteractioncontroller-does-not-show-mail-option –

+0

Я уже использовал presentOptionsMenuFromBarButtonItem (это был мой первый выбор), но с тех пор как он не открывается Adobe Reader (или любые другие приложения). Он работает только для почты и печати. Я установил UTI с помощью documentController.UTI = @ "com.adobe.pdf"; – olivierplante