2016-04-17 6 views
0

В моем приложении пользователи могут сохранять веб-страницы в виде файлов PDF на TableView. Теперь, как открыть PDF-файл после нажатия на ячейку? Следующие коды только начинаются с if let. Вы можете посоветовать свой способ сделать это, если он отличается. Благодарю.Как открыть файл PDF на TableView?

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 

    if let pdfToOpen = NSUserDefaults.standardUserDefaults().objectForKey("pdfSaved") as? NSData { 

} 
+0

Я предлагаю создать UIWebView для этого – penatheboss

+0

Спасибо , Я знаю, если я сохраню URL-адрес веб-страницы в TabView, и я могу открыть его после нажатия на ячейку. Но я не знаю коды для открытия PDF-файла. Вы можете посоветовать? – Mike

+0

Посмотрите [это сообщение SO] (http://stackoverflow.com/questions/29682245/how-to-load-local-pdf-in-uiwebview-in-swift) – penatheboss

ответ

0

вы можете использовать WebView, чтобы показать Pdf данные, такие как,

[webview loadData:PdfContent MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil]; 

передать ваши данные, которые вы получаете от nsuserdefault вместо pdfContent.

Это объективный код, который преобразует эту строку в быстрый.

В быстром что-то вроде,

func loadData(_ data: NSData, 
    MIMEType MIMEType: String, 
    textEncodingName textEncodingName: String, 
    baseURL baseURL: NSURL) 

, если вы хотите открыть из url затем,

let url : NSURL! = NSURL(string: "http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIWebView_Class/UIWebView_Class.pdf") 
webView.loadRequest(NSURLRequest(URL: url)) 

надеюсь, что это поможет :)

+0

Спасибо. Я считаю, что это то, что мне нужно, и сейчас работаю над быстрым кодом. Можете ли вы посоветовать, как установить MIMEType: String? Какую строку следует использовать здесь? – Mike

+0

Я думаю, что «приложение/pdf» вы должны использовать – Lion

+0

Спасибо, получилось. – Mike

Смежные вопросы