WKWebview不会在Swift中加载本地图像

时间:2014-11-07 08:38:26

标签: swift wkwebview

我正在使用WKWebview来显示我的本地htm文件。一切都很好,但当我将本地图片添加到我的htm文件时,图片看起来并不合适。很多stackoverflow用户都有类似的问题,但没有明确的答案。这是我的代码;

    var a = dic["adi"]?.asString()
    var path = NSBundle.mainBundle().pathForResource(a, ofType: "htm" )
    var url = NSURL(fileURLWithPath:path!)
    var request = NSURLRequest(URL:url!)

    var theConfiguration = WKWebViewConfiguration()

    theWebView = WKWebView(frame:self.view.frame, configuration: theConfiguration)

    var error:NSError?
    let text2 = String(contentsOfFile: path!, encoding:NSUTF8StringEncoding, error: &error)

    if let theError = error
    {
        print("\(theError.localizedDescription)")
    }

    theWebView!.loadHTMLString(text2!, baseURL: nil)
    self.view.addSubview(theWebView!)

我希望你能帮助我。我在等你的答案。谢谢。

2 个答案:

答案 0 :(得分:2)

这是WKWebView中的一个错误。

您可以等待8.2修复或使用脏黑客(本地HTTP服务器)。

答案 1 :(得分:1)

使用 WKWebView 在本地HTML文件中显示本地图像的技巧是在 loadHTMLString 方法中定义baseURL。

我的代码示例在Objective-C中,但您会明白:

    NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
    NSURL *baseURL = [NSURL fileURLWithPath: resourcePath];

    [self.webView loadHTMLString: htmlBodyString baseURL: baseURL ];