Приложение Split View, отображение PDF в подробном представлении, PDF - локальное хранилище - PullRequest
0 голосов
/ 13 мая 2011

У меня есть приложение Split View, которое я создаю, использую plist для моего массива и использую UIWebView для отображения содержимого в DetailViewController.Используя приведенный ниже код для вызова URL-адреса в моем списке, URL-адрес отображает PDF-файл в DetailViewController через UIWebView.

DetailViewController.m

NSString *mutareURL = [_detailItem description];
NSURL *url = [NSURL URLWithString:mutareURL];
[_catalog loadRequest:[NSURLRequest requestWithURL:url]];

Мне нужно сделать так, чтобы все PDF-файлы были в моей папке ресурсов в моем проекте.Я могу использовать NSArray или plist для RootViewController (TableView), но мне нужно иметь возможность отображать PDF-файлы в DetailViewController через UIWebView, когда в RootViewController (TableView) выбрана строка.Я попробовал этот код в моем файле DetailViewController.m, но он не работает.

NSString *path = [[NSBundle mainBundle] pathForResource:@"%@" ofType:@"pdf"];
NSURL *targetURL = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[_Pdf loadRequest:request];

У меня есть NSLog в моем файле RootViewController.m с этим кодом, и я вижу, что имена pdfфайлы отображаются в моем отладчике.Я просто не знаю, как получить их из RootViewController и передать их в pathforResourse "@"% @ "ofType: @" pdf "]; area. Брошюр - это NSArray, который имеет все addObject: @" nameofpdfs ", чтопроходит.

RootViewController.m

detailViewController.detailItem = [NSString stringWithFormat:@"%@", [brochures objectAtIndex:indexPath.row]];
NSLog(@"Cell created for row: %d", [indexPath row]);
NSLog(@"brochures = %@", detailViewController.detailItem);

Спасибо

1 Ответ

0 голосов
/ 15 мая 2011

Ответ, вероятно, в последнем фрагменте. Первая строка по сути передает выбранное имя файла от RootViewController до DetailViewController, устанавливая свойство detailItem последнего.

Если вы замените

NSString *path = [[NSBundle mainBundle] pathForResource:@"%@" ofType:@"pdf"];

от

NSString *path = [[NSBundle mainBundle] pathForResource: self.detailItem ofType:@"pdf"];

это должно работать.

В зависимости от того, содержат ли имена файлов в массиве brochures суффикс @".pdf", вам, возможно, придется не указывать его при отправке сообщения:

NSString *path = [[NSBundle mainBundle] pathForResource: self.detailItem ofType: nil];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...