Swift2 加载本地css&;将js文件导入WKWebView
在Swift 2.1.1和Xcode 7.1中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
我的代码使用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)