QLPreviewController 的工具栏解决方法

QLPreviewController 是苹果自带用于展示pdf文件等的控件,简单实用。需要导入<QuickLook>框架,并且创建一个QLPreviewController。QLPreviewController可以用presentViewController:animated:completion: 展示,也可以直接pushViewController:animated:引出。QLPreviewController必须实现QLPreviewControllerDataSource,QLPreviewControllerDataSource这里面有两个方法是必须实现的。

#import <QuickLook/QuickLook.h>

- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller;

- (id <QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index;

但是QLPreviewController要修改界面也是比较困难的,比如需要将分享按钮和整个工具条去掉,修改导航栏的样式,做这样的UI直接在QLPreviewController上做是比较困难的。

PDF1.png

基于此,我们可以将QLPreviewController添加到自己的控制器上,然后去自定义工具条和导航栏。

// 将QLPreviewControler  添加到本控制器上
    QLPreviewController *HPQLController = [[QLPreviewController alloc] init];
    HPQLController.dataSource = self;
    [self addChildViewController:HPQLController];
    [HPQLController didMoveToParentViewController:self];
    [self.view addSubview:HPQLController.view];
    HPQLController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);

戳我

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

推荐阅读更多精彩内容