繁体   English   中英

iOS UIWebView loadHTMLString不起作用

[英]iOS UIWebView loadHTMLString does not work

我尝试:

let body = "<body>.. ANYTHING ..</body>"
self.webView.loadHTMLString(body, baseURL: NSURL(string: "www.google.com")!)

要么

self.webView.loadHTMLString(body, baseURL: nil)

如果我打印:

 self.webView.stringByEvaluatingJavaScriptFromString("document.body.outerHTML")!

此打印:

<body></body>

那不是我的整个HTML ..

有任何想法吗?

注意

身体来自

NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in
                            if error == nil {
    let body = NSString(data: data, encoding: NSUTF8StringEncoding)
}

是的,不为空

如果你打电话

self.webView.stringByEvaluatingJavaScriptFromString("document.body.outerHTML")!

loadHTMLString是,由于UIWebView异步加载内容,因此在调用loadHTMLStringloadHTMLString情况。 viewDidLoad设置UIWebView的委托,然后在委托方法中调用此EvaluationJS ...

func webViewDidFinishLoad(webView: UIWebView) 
{
    let body = self.webView.stringByEvaluatingJavaScriptFromString("document.body.outerHTML")!
    println(body)
}

将您的html文件保存到您的项目中,然后将其加载到webview中,请参阅下文,如果这样做没有帮助,请检查此:- 链接

import UIKit


class ViewController: UIViewController {
@IBOutlet weak var webView: UIWebView!

    override func viewDidLoad() {
        // Do any additional setup after loading the view, typically from a nib.
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        let localfilePath = NSBundle.mainBundle().URLForResource("test", withExtension: "html");
        let myRequest = NSURLRequest(URL: localfilePath!);
        webView.loadRequest(myRequest);
        //or use as below 
        let myHTMLString:String! = "<h1>Hello Pizza!</h1>"
        webView.loadHTMLString(myHTMLString, baseURL: nil)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }



}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM