美文网首页pdf预览
iOS QuickLook预览文件功能

iOS QuickLook预览文件功能

作者: CCSHCoder | 来源:发表于2016-07-08 15:49 被阅读925次

    1、想要使用此功能首先要在工程内加入框架

    QuickLook.framework
    

    2、在你需要展示的界面加入头文件

    #import <QuickLook/QuickLook.h>
    

    3、实例化

        QLPreviewController *myQlPreViewController = [[QLPreviewController alloc]init];
        myQlPreViewController.delegate =self;
        myQlPreViewController.dataSource =self;
        [myQlPreViewController setCurrentPreviewItemIndex:0];
        //此处可以带导航栏跳转、也可以不带导航栏跳转、也可以拿到View进行Add
        [self.navigationController pushViewController:myQlPreViewController animated:YES];
    

    4、代理方法

    #pragma mark - QLPreviewController代理
    - (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller
    {
        return 1;
    }
    
    - (id<QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index
    {
    
        NSString* path = [[NSBundle mainBundle] pathForResource:arr[IndeX] ofType:nil];
        return [NSURL fileURLWithPath:path];
    }
    
    - (void)previewControllerDidDismiss:(QLPreviewController *)controller
    {
        NSLog(@"预览界面已经消失");
    }
    
    //文件内部链接点击不进行外部跳转
    - (BOOL)previewController:(QLPreviewController *)controller shouldOpenURL:(NSURL *)url forPreviewItem:(id <QLPreviewItem>)item
    {
        return NO;
    }
    

    相关文章

      网友评论

      • sunney0:请问我预览一个pdf时,我可以获得这个pdf的页数和每一页的数据么,怎么获得。看你文章里,只传了文档的数量和地址,分页预览时系统自己做的把,有方法获取页数和数据吗? :grin:
      • iSuAbner:你好 请问如果想要读取网络的PDF文件 我是不是应该把这个PDF下载下来才能读取,可不可以在代理方面直接写远端网址,直接读取不用必须要下载,直接系统自身缓存啊?救命啊~~~~
        CCSHCoder:@KoreaHappyend 没试过,应该是可以的 [NSURL URLWithString:<#(nonnull NSString *)#>]; 地址写成这个

      本文标题:iOS QuickLook预览文件功能

      本文链接:https://www.haomeiwen.com/subject/lphrjttx.html