Как получить доступ к PDF, сохраненному на iPhone из приложения? - PullRequest
1 голос
/ 01 марта 2012

Я создал приложение, которое генерирует PDF и сохраняет его в NSDocumentDirectory. Я хочу, чтобы пользователю было очень легко найти файл и отобразить его или распечатать на своем iPhone. Как мне найти этот файл и просмотреть его легко?

Вот код, который я использовал для создания PDF:

       //USE PDFGENERATOR TO CREATE A PDF FILE
    PDFViewController* pdf = [[PDFViewController alloc] init];

    NSString *header = lblTitle.text;
    NSLog(@"fullQuote=%@", header);

    NSString *body = [NSString stringWithFormat:@"%@ \n\n - LRH \n %@", lblExcerpt.text, lblDesc2.text];
    NSLog(@"fullQuote=%@", body);

    pageSize = CGSizeMake(612, 792);
    NSString *fileName = [NSString stringWithFormat:@"%@.pdf", lblTitle.text];

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *pdfFileName = [documentsDirectory stringByAppendingPathComponent:fileName];

    [pdf generatePdf :pdfFileName:header:body:nil];

1 Ответ

0 голосов
/ 01 марта 2012

Есть хороший учебник здесь , который демонстрирует, как открыть файлы .pdf, .xls в вашем приложении.

Основной класс, на который вы должны ссылаться, это QLPreviewController. здесь

Это метод источника данных, который вы должны вызвать для этого

- (id <QLPreviewItem>)previewController: (QLPreviewController *)controller previewItemAtIndex:(NSInteger)index 
{
   // Break the path into it's components (filename and extension)
   NSArray *fileComponents = [[arrayOfDocuments objectAtIndex: index] componentsSeparatedByString:@"."];

  // Use the filename (index 0) and the extension (index 1) to get path

  NSString *path = [[NSBundle mainBundle] pathForResource:[fileComponents objectAtIndex:0] ofType:[fileComponents objectAtIndex:1]];

 return [NSURL fileURLWithPath:path];
}

Также кто-то хотел бы отослать этот вопрос SO: iPhone - Открытие файла Word и Excel без использования UIWebview .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...