美文网首页App Services kits程序员iOS
iOS使用QuickLook进行文档读取

iOS使用QuickLook进行文档读取

作者: 和影子玩拳击 | 来源:发表于2016-11-11 10:44 被阅读906次

大家在使用APP的时候一定会遇见过这样一个情况,就是在注册的时候.需要用户同意注册协议.今天就分享给大家这个简单的读取文档的功能.读取文档有很多方式,我们用的是系统提供的QuickLook进行文档读取,上代码.
第一步

#import <QuickLook/QuickLook.h>
@interface RegisterAgreementViewController ()<QLPreviewControllerDataSource, QLPreviewControllerDelegate>
@property(nonatomic, strong)NSString *myFilePath;
@property(nonatomic, strong)QLPreviewController *previewController;

第二步,当然协议是你文档在本地的路径

_myFilePath = [[NSBundle mainBundle] pathForResource:@"XXX注册协议" ofType:@"txt"];
    if (![_myFilePath isEqualToString:@""])
    {
        _previewController = [[QLPreviewController alloc] init];
        _previewController.dataSource = self;
        _previewController.delegate = self;
        _previewController.view.frame = self.view.frame;
        [self addChildViewController:self.previewController];
        [self.view  addSubview:self.previewController.view];
    }
    else
    {
        UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:@"文件丢失" preferredStyle:UIAlertControllerStyleAlert];
        UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        
        }];
        [alertController addAction:okAction];
        [self presentViewController:alertController animated:YES completion:nil];
    }

第三部,实现两个代理方法

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

-(id<QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index
{
    if (![_myFilePath isEqualToString:@""])
    {
        return [NSURL fileURLWithPath:_myFilePath];
    }
    else
    {
        return nil;
    }
}

简单吧,就可以进行文档读取了.

相关文章

网友评论

  • cf530b292c37:你好,请教一下,QuickLook可以直接加载网络上的url吗?
    和影子玩拳击:不好意思,我也没试过,你可以试试
  • 要开心:很好用,多谢!
  • sunney0:你好,请问有demo么, :grin: ,谢谢
    sunney0:@sunney0 好的,我试试看
    和影子玩拳击:@sunney0 新建一个ViewController,然后按照我写的一步一步写,就可以了,很简单的

本文标题:iOS使用QuickLook进行文档读取

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