WKWebView在设备上显示空白,在模拟器上工作
我的应用程序的一个模块是一个网站。该网站主要包含一个SVG图纸,带有自定义形状的按钮(使用Raphael.js库)访问其他图纸(其他图纸使用svg图纸)。WKWebView在设备上显示空白,在模拟器上工作
如果设备在iOS 7上,我使用UIWebView,一切正常。
对于iOS 8设备,我使用WKWebView。我遇到了一些问题,其中一些问题由this post解决。我可以在这些模拟器上看到我的网站(iPhone 5/iOS 8.0(12A365)& iPhone 5s/iOS 8.0),但我无法在iPod Touch上看到它(第5代,运行iOS 8.0.2)。它显示一个空白屏幕。
我不知道该找什么。任何想法?
编辑
以下@丹Fabulich的答案(here)之后,我现在得到了一个真正的加载web视图,从未完成加载了。他的回答告诉我们,从一个字符串加载html时,WKWebView存在一个错误。他的答案是将html内容复制到一个新的子文件夹中,然后从该URL调用loadRequest
。
不幸的是,我仍然坚持一个非工作的webview。任何线索? webview永远无法完成加载内容的原因是什么?
我有一些问题,但我解决了配置选项的问题。这是我的代码。
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!)
希望这有助于。
你确定它现在有效吗? – xhg 2014-12-12 21:24:29
我相信复制到文档文件夹不起作用;我认为只有复制到临时文件夹('NSTemporaryDirectory()')才能解决这个问题。 – SeanR 2014-10-20 06:06:34
IMO,这是不是一个足够的问题要StackOverflow回答。它的确听起来像你在我的答案中报告的错误,但通常没有什么增加我的答案。 (请注意,我没有编写解决方法代码; shazron做了。)我唯一的建议是尝试让shazron的解决方案项目起作用。如果这有效,那么你有一些工作,一些没有的;仔细的审查和实验应该可以帮助你找到差异。 – 2014-10-20 07:41:02
我看到了同样的问题,但是:NSURLRequest * request = [NSURLRequest requestWithURL:url]; [webView loadRequest:request]; – user3246173 2014-10-20 16:06:20