Swift2 加载本地css&;将js文件导入WKWebView

Swift2 加载本地css&;将js文件导入WKWebView,swift2,wkwebview,xcode7.1,Swift2,Wkwebview,Xcode7.1,在Swift 2.1.1和Xcode 7.1中 我的代码使用WKWebView并从本地文件加载index.html,但未能加载index.css和其他javascript文件,如head标记所示 我最好的猜测是baseURL不正确,如果是这样,如何正确设置baseURL?谢谢 import UIKit import WebKit class ViewController: UIViewController { @IBOutlet var containerView: UIView! = nil

在Swift 2.1.1和Xcode 7.1中
我的代码使用WKWebView并从本地文件加载index.html,但未能加载index.css和其他javascript文件,如head标记所示

我最好的猜测是baseURL不正确,如果是这样,如何正确设置baseURL?谢谢

import UIKit
import WebKit

class ViewController: UIViewController {
@IBOutlet var containerView: UIView! = nil  //allows the class to refrence WKWebView
var webView: WKWebView?

override func loadView() {
    super.loadView()

    self.webView = WKWebView()
    self.view = self.webView!
}

override func viewDidLoad() {
    super.viewDidLoad()

    let HTMLDocumentPath = NSBundle.mainBundle().pathForResource("index", ofType: "html")
    let HTMLString: NSString?

    do {
        HTMLString = try NSString(contentsOfFile: HTMLDocumentPath!, encoding: NSUTF8StringEncoding)
        let baseUrl  = NSURL.fileURLWithPath("")
        webView!.loadHTMLString(HTMLString as! String, baseURL: baseUrl)

    } catch {
        HTMLString = nil
    }
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
}
}


存款准备金率
在阅读了一些有关文件url的信息后,我终于解决了这个问题

这是密码

import UIKit
import WebKit

class ViewController: UIViewController {
    @IBOutlet var containerView: UIView! = nil  //allows the class to reference WKWebView
    var webView: WKWebView?

    override func loadView() {
        super.loadView()

        self.webView = WKWebView()
        self.view = self.webView!
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        let baseUrl = NSURL(string: "file:///<yourFilePath>/abc/")
        let path = NSBundle.mainBundle().pathForResource("abc/index", ofType: "html")
        let HTMLString: NSString?

        do {
            HTMLString = try NSString(contentsOfFile: path!, encoding: NSUTF8StringEncoding)
            webView!.loadHTMLString(HTMLString as! String, baseURL: baseUrl )

        } catch {
            HTMLString = nil
        }
    }
}
导入UIKit
导入WebKit
类ViewController:UIViewController{
@IBOutlet var containerView:UIView!=nil//允许类引用WKWebView
var webView:WKWebView?
重写func loadView(){
super.loadView()
self.webView=WKWebView()
self.view=self.webView!
}
重写func viewDidLoad(){
super.viewDidLoad()
让baseUrl=NSURL(字符串:file:////abc/")
让path=NSBundle.mainBundle().pathForResource(“abc/index”,类型:“html”)
让HTMLString:NSString?
做{
HTMLString=尝试NSString(内容文件:path!,编码:NSUTF8StringEncoding)
webView!.loadHTMLString(HTMLString为!字符串,baseURL:baseURL)
}抓住{
HTMLString=nil
}
}
}

Hi,您能准确描述一下您使用的路径而不是
file:////abc/
?感谢baseUrl以“file://”开头很重要,确切的文件路径没有那么重要bundle.main.bundlePath(Swift 3)