无法使用Swift 3在webView中打印PDF,需要baseURL和初始化程序

时间:2016-10-04 16:33:56

标签: ios swift uiwebview swift3 base-url

使用iOSSwift2内置的Xcode7项目具有以下功能:用户可以打印存储在webView中显示的应用内存中的PDF。工作得很好,将打印到附近的wifi打印机。我使用迁移工具将其转换为Swift3,现在遇到了需要具有初始值设定项的baseURL的问题:

    if buttonPressed == "Print" {

        // Create a coded WebView only; not visible
        let printWebView: UIWebView = UIWebView()

        // Load the converted PDF Data to the WebView
        printWebView.load(pdfData as Data, mimeType: "application/pdf", textEncodingName: "", baseURL: URL())

        ...

    }

在我开始使用Swift3之前工作正常如何解决此问题?以前它正在使用NSURL()。 PDF是一个保存在应用程序内存中,他们可以查看然后打印。 PDF本身可以充当baseURL吗?我在网上看了,找不到任何有用的东西。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您可以像这样使用absoluteURLNSURL()属性。

if let url = NSURL().absoluteURL {
    printWebView.load(pdfData as Data, mimeType: "application/pdf", textEncodingName: "", baseURL: url)
}