iOS使用QuickLook进行文档读取

大家在使用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;
    }
}

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,751评论 25 709
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,382评论 11 349
  • 所有的合适都是两个人的相互迁就和改变,没有天生合适的两个人。两个人朝着相同的方向努力,就是最好的爱情。 有段时间你...
    马小六六阅读 211评论 0 0
  • 已经忘记 写在哪一年哪一天的小情书 永远也不会寄达的小情书 亲爱的: 我今天心情很好。 好到我想告诉你,我真的心情...
    琉璃树I浅浅兮阅读 203评论 0 1