在iOS 11中显示PDF

时间:2017-10-11 16:57:31

标签: ios objective-c qlpreviewcontroller

我已经尝试过没有运气的WKWebView。现在我尝试使用QLPreviewController。

我已经在QLPreviewController下创建了一个UIViewController并将其子类化。

在我的viewDidLoad中,我设置了委托和数据源:

self.dataSource = self;
self.delegate = self;
self.currentPreviewItemIndex = 0;

然后,我有以下两种方法来获取视图控制器中的项目数和文件路径:

- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller {
    return 1;
}

- (id<QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index {
    NSString *pdfPath = [[NSBundle mainBundle] pathForResource:@"BOR" ofType:@"pdf"];
    NSURL *fileURL = [[NSURL alloc] initWithString:pdfPath];
    return fileURL;
}

当我导航到我的视图控制器时,视图为灰色并显示以下文本:

&#34;没有要预览的文件&#34;

我做错了什么?

1 个答案:

答案 0 :(得分:0)

看来你有QLPreviewController的子类?这是非法和不必要的。您只需制作预览控制器,对其进行配置,然后推送或呈现它。