在UiButton按下时查看pdf

时间:2013-06-05 13:20:50

标签: ios6 quicklook qlpreviewcontroller

我在按下名为viewManual的pdf时尝试打开UiButton文档。我添加了QuickLook框架,目前有:

·H

#import <QuickLook/QuickLook.h>

@interface ObViewControllerUsingIObserve : UIViewController <QLPreviewControllerDataSource,                                                     QLPreviewControllerDelegate>
{
NSArray *documents;
}
- (IBAction)viewManual:(id)sender;
- (void)createList;
- (NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *) controller;
- (id <QLPreviewItem>) previewController: (QLPreviewController *) controller previewItemAtIndex: (NSInteger) index;

的.m

-(void) createList
{
  documents = [NSArray arrayWithObjects:@"ObservationPDF.pdf", nil] ;   
}

-(NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *) previewcontroller
{
return [documents count];
}

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

return [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:[documents objectAtIndex:0] ofType:nil]];
}

- (IBAction)viewManual:(id)sender {
[self createList];
QLPreviewController *previewController = [[QLPreviewController alloc] init];
previewController.dataSource = self;
previewController.delegate = self;
previewController.currentPreviewItemIndex = [documents objectAtIndex:0];
[[self navigationController] presentViewController: previewController animated:YES completion:nil];

}

我已尝试过以前代码中的以下代码,但它不起作用,根本没有任何反应,我不确定从哪里开始。任何帮助非常感谢。

1 个答案:

答案 0 :(得分:0)

我是iOS开发的新手。 (3天) 所以我不知道这是否会有所帮助,但是如果你的QLPreviewController实现了一个协议,那么协议定义了一组必须实现的方法。

您似乎没有实现这些方法(numberOfPreviewItemsInPreviewController和previewItemAtIndex),因此您的控制器不符合协议要求。

我将看一下QuickLook框架,看看能不能找到更多。