QLPreviewController

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • QLPreviewController

    Hallo ,

    gibt es eine Möglichkeit den View des QLPreviewController in einen eigen View als Subview anzeigen zu lassen. Standard mässig wird dieser ja als FullScreen/modal angezeigt (wie folg, funktioniert auch):

    Quellcode

    1. NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"Test.pages" ofType:nil]];
    2. if (self.docInteractionController == nil) {
    3. self.docInteractionController = [UIDocumentInteractionController interactionControllerWithURL:url];
    4. self.docInteractionController.delegate = self;
    5. }
    6. else {
    7. self.docInteractionController.URL = url;
    8. }
    9. NSInteger iconCount = [docInteractionController.icons count];
    10. if (iconCount > 0) {
    11. self.icon.image = [docInteractionController.icons objectAtIndex:0];
    12. }
    13. // for case 3 we use the QuickLook APIs directly to preview the document -
    14. QLPreviewController *previewController = [[QLPreviewController alloc] init];
    15. previewController.dataSource = self;
    16. previewController.delegate = self;
    17. if (popoverController != nil) {
    18. [popoverController dismissPopoverAnimated:YES];
    19. }
    20. // start previewing the document at the current section index
    21. previewController.currentPreviewItemIndex = 0;
    22. [self presentModalViewController:previewController animated:YES];
    23. [previewController release];
    24. ...
    25. #pragma mark -
    26. #pragma mark UIDocumentInteractionControllerDelegate
    27. - (UIViewController *)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)interactionController
    28. {
    29. return self;
    30. }
    Alles anzeigen


    Diese schicke Vorschau möchte ich jetzt in mein DetailViewController eines UISplitViewControllers anzeigen lassen. Hat jemand damit schon Erfahrungen gemacht ?

    Danke für Tipps !
    Si tacuisses, philosophus mansisses !
  • Hab es gefunden, für alle die es interessiert:

    Quellcode

    1. //[self presentModalViewController:previewController animated:YES]; -> raus
    2. [self.view addSubview:previewController.view]; // rein <-
    3. [previewController reloadData]; // it's magic !
    4. //[previewController release]; // Aufpassen !! Böse Falle
    Si tacuisses, philosophus mansisses !
  • Ich habe nur ein QLPreviewController den ich einmal in viewDidLoad mir hohle und bei nicht gebrauch (eine Action oder App Ende) wieder freigebe ! Zeile 14 bis 17 sind im ersten Beispiel nicht mehr gültig !

    Und die Zeile:

    Quellcode

    1. [self.view addSubview:previewController.view]; // rein <-


    braucht auch nur einmal aufgerufen werden.

    Wichtig ist reloadData für den Wechsel eines neuen Dokument.
    Si tacuisses, philosophus mansisses !

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von FRing ()