你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS 利用QuickLook查看PDF、WORD、PPT、xlsx

iOS 利用QuickLook查看PDF、WORD、PPT、xlsx

編輯:IOS開發綜合

 

這個我們學習iOS的QuickLook框架實現很簡單,如下:

ViewController.h

 

#import 
#import 



@interface ViewController : UIViewController
@property (strong , nonatomic)  QLPreviewController *previewController;


@end

ViewController.m

 

 

//
//  ViewController.m
//  QuickLook例子
//
//  Created by 杜甲 on 14-3-18.
//  Copyright (c) 2014年 杜甲. All rights reserved.
//

#import ViewController.h

@interface ViewController ()

@property (strong , nonatomic) NSArray* m_dirArray;
@property (strong , nonatomic) UIDocumentInteractionController* m_docInteractionController;

@end

@implementation ViewController


- (void)viewDidLoad
{
    [super viewDidLoad];
    
 
    
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsPath = [paths objectAtIndex:0]; //Get the docs directory
    
    
    
   NSString*   pathppt  = [[NSBundle mainBundle] pathForResource:@C ofType:@pdf];
    NSData* pptData = [NSData dataWithContentsOfFile:pathppt];
    NSString* filePath = [documentsPath stringByAppendingPathComponent:@C1.pdf];
    
    [pptData writeToFile:filePath atomically:YES];
    
    
    
    NSFileManager* fileManager = [NSFileManager defaultManager];
    self.m_dirArray = [NSArray array];
    self.m_dirArray = [fileManager contentsOfDirectoryAtPath:documentsPath error:Nil];
    NSLog(@%@,self.m_dirArray);
    self.view.backgroundColor  = [UIColor redColor];
    
     self.previewController = [[QLPreviewController alloc] init];
    //self.previewController.view.frame = CGRectMake(0, 0, 320, 568);
    self.previewController.view.backgroundColor = [UIColor grayColor];
    self.previewController.dataSource = self;
    self.previewController.delegate = self;
    
    // start previewing the document at the current section index
    self.previewController.currentPreviewItemIndex = 0;//indexPath.row;
    [self presentViewController:self.previewController animated:YES completion:^{
        [self.view addSubview:self.previewController.view];

    }];
    [self.view addSubview:self.previewController.view];

}




#pragma mark - QLPreviewControllerDataSource

// Returns the number of items that the preview controller should preview
- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)previewController
{
	return [self.m_dirArray count];//[self.dirArray count];
}

- (void)previewControllerDidDismiss:(QLPreviewController *)controller
{
    // if the preview dismissed (done button touched), use this method to post-process previews
}

// returns the item that the preview controller should preview
- (id)previewController:(QLPreviewController *)previewController previewItemAtIndex:(NSInteger)idx
{NSURL* fileURL = nil;
    
    NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
	NSString *documentDir = [documentPaths objectAtIndex:0];
    
    NSString* path1 = [self.m_dirArray objectAtIndex:idx];
    NSString* path = [documentDir stringByAppendingPathComponent:path1];
    
	fileURL = [NSURL fileURLWithPath:path];
    return fileURL;
}




- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end


 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved