2015-04-16 5 views
24

ho implementato UIDocumentInteractionController nella mia app per mostrare aperta in opzioni. Funziona bene su dispositivi iOS8, ma in iOS7 quando apro il mio PDF nella posta dalle opzioni. Si apre il compositore di posta quando congedo il compositore di posta rimuove anche un pulsante di menu dalla mia vista (che viene aggiunta alla finestra). Ho passato tutta la giornata a lottare con questo problema ma non sono riuscito a trovare alcuna soluzione. Quando apro il mio PDF in altre opzioni, non ci sono problemi. Il problema è solo con il compositore di posta con iOS7. Lo so UIDocumentInterfaceController ha un problema con iOS7. I found the same issue on SO ma questo è con l'opzione di anteprima di un rapido sguardo.respingendo iOS posta app aperta da UIDocumentInteractionController rimuove vista della presentazione del ViewController in iOS7

Ecco il mio codice per aprire le opzioni

[self.docInteractionController presentOptionsMenuFromRect:self.view.frame 
                inView:self.view 
               animated:YES]; 

Qualsiasi aiuto su questo sarà apprezzato.

Grazie in anticipo.

+0

Penso che si dovrebbe usare self.window al posto di sé. vista. – IOSDev

+0

@IOSDev finestra non accessibile da sé. Ho anche provato a presentare il menu delle opzioni nella finestra dell'applicazione. –

+0

può essere accessibile da self a look.window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bound]]; – IOSDev

risposta

0

Prova questo, può aiutare a risolvere il tuo problema.

NSURL* url = //...Your URL //[NSURL fileURLWithPath:path]; 
UIDocumentInteractionController* docController = [UIDocumentInteractionController interactionControllerWithURL:url]; 
docController.delegate = self; 
[docController presentPreviewAnimated:YES]; 
+0

Non voglio aprire l'anteprima @angel ... Voglio solo aprire il compositore di posta dal menu delle opzioni .... –

0
- (IBAction)previewDocument:(id)sender { 
    NSURL *URL = [[NSBundle mainBundle] URLForResource:@"sample" withExtension:@"pdf"]; 

    if (URL) { 
     // Initialize Document Interaction Controller 
     self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:URL]; 

     // Configure Document Interaction Controller 
     [self.documentInteractionController setDelegate:self]; 

     // Preview PDF 
     [self.documentInteractionController presentPreviewAnimated:YES]; 
    } 
} 
+0

controlla che il link possa aiutarti –

+0

controlla il link per ulteriori riferimenti http: //code.tutsplus .com/tutorials/ios-sdk-anteprima-and-apertura-documenti - mobile-15130 –

0

per questo si può controllare la versione di iOS se è < 8 quindi aprire il file PDF nel browser web come questo

UIWebView *webview = [[UIWebView alloc] init]; 
    [self.view addSubview:webview]; 
    NSString *path = [[NSBundle mainBundle] pathForResource:@"pdfFileName" ofType:@"pdf"]; 
    NSURL *targetURL = [NSURL fileURLWithPath:path]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:targetURL]; 
    [webview loadRequest:request];` 
Problemi correlati