如何使用 Swift 在 UIWebView 上远程显示 PDF 文件?
How to display PDF files from remote location on UIWebView using Swift?
我正在尝试使用位于我们网站上的 iOS 应用程序显示 pdf 文件。我是这样做的:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
print("preparing segue")
if segue.identifier == "PdfWebView" {
print("Found segue")
let detailViewController = segue.destinationViewController as! PdfViewController
let myIndexPath = self.tableView.indexPathForSelectedRow!
let row = myIndexPath.row
//Pass selected cell title to next View
detailViewController.website = pdfLinks[row]
print("Website: ", detailViewController.website)
}
}
// This is on pdfViewController
// The webiste = http://www.example.com/some-pdf-document-to-display.pdf
if let website = website {
print("Getting pdf: ",website)
if let pdf = NSBundle.mainBundle().URLForResource(website, withExtension: "pdf", subdirectory: nil, localization: nil){
print(pdf) // <-- this is always nil
let req = NSURLRequest(URL: pdf)
webView.loadRequest(req)
self.view.addSubview(webView)
}
}
我做错了什么?不用说,这是我正在开发的第一个应用程序。
如果该文件不在您的应用中,则不应使用 NSBundle。
let pdfUrl = NSURL(string: website)
let req = NSURLRequest(URL: pdfUrl)
我也不确定您为什么要将 webView 子视图添加到视图中。不应该在别的地方做吗?你不应该用 webview 来推送控制器吗?
文件不在您的包中。相反,您可以直接加载 URL.
let website = "http://www.sanface.com/pdf/test.pdf"
let reqURL = NSURL(string: website)
let request = NSURLRequest(URL: reqURL!)
webView.loadRequest(request)
我正在尝试使用位于我们网站上的 iOS 应用程序显示 pdf 文件。我是这样做的:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
print("preparing segue")
if segue.identifier == "PdfWebView" {
print("Found segue")
let detailViewController = segue.destinationViewController as! PdfViewController
let myIndexPath = self.tableView.indexPathForSelectedRow!
let row = myIndexPath.row
//Pass selected cell title to next View
detailViewController.website = pdfLinks[row]
print("Website: ", detailViewController.website)
}
}
// This is on pdfViewController
// The webiste = http://www.example.com/some-pdf-document-to-display.pdf
if let website = website {
print("Getting pdf: ",website)
if let pdf = NSBundle.mainBundle().URLForResource(website, withExtension: "pdf", subdirectory: nil, localization: nil){
print(pdf) // <-- this is always nil
let req = NSURLRequest(URL: pdf)
webView.loadRequest(req)
self.view.addSubview(webView)
}
}
我做错了什么?不用说,这是我正在开发的第一个应用程序。
如果该文件不在您的应用中,则不应使用 NSBundle。
let pdfUrl = NSURL(string: website)
let req = NSURLRequest(URL: pdfUrl)
我也不确定您为什么要将 webView 子视图添加到视图中。不应该在别的地方做吗?你不应该用 webview 来推送控制器吗?
文件不在您的包中。相反,您可以直接加载 URL.
let website = "http://www.sanface.com/pdf/test.pdf"
let reqURL = NSURL(string: website)
let request = NSURLRequest(URL: reqURL!)
webView.loadRequest(request)