iOS 使用QuickLook库预览PDF、WORD、PPT、XLSX

当遇到项目中需要打开PDF、WORD、PPT、XLSX文件的需求时,我们可以使用系统提供的QuickLook库来完成。

#pragma mark - 文件查看
- (void)previewFile
{
    if ([QLPreviewController canPreviewItem:(id)self.fileUrl]) {
        QLPreviewController* previewer = [[QLPreviewController alloc] init];
        previewer.dataSource = self;
        previewer.delegate = self;
        previewer.view.frame = CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
        [self.view addSubview:previewer.view];
        NSString *version = [UIDevice currentDevice].systemVersion;
        /// 在iOS10以下 使用didMove方法 10开始没有效果
        if (version.floatValue >= 10.0) {
            [self addChildViewController:previewer];
        } else {
            [previewer didMoveToParentViewController:self];
        }
    } else {
        
    }
}

#pragma mark - 返回加载文件个数
- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller {
    return 1;
}
#pragma mark - 返回加载路径
- (id )previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index {
    return self.fileUrl;
}