這幾天遇到一個很坑爹的問題。uiwebview明明界面已經出來了,但是加載動畫一直還在。情況還比較奇葩的是,在公司的wifi下才出現這種情況,切換4g網絡是正常的,而且mac上的模擬器也沒有這問題。經檢查是
webViewDidFinishLoad方法一直沒觸發。當然我這里聲明下webview.delegate已經設置了。viewdidstartload已正常觸發的情況。這個怎么說也算是個奇葩問題了。
查了各種資料,毫無頭緒,無意中把loadrequest的方法換了個。問題居然解決了。下面記錄下,有遇到同樣問題的同學也可以試試。
//這種方式可以解決viewdidfinish不會觸發的問題
var data = NSData(contentsOfURL: NSURL(string: wkAttribute!.urlString)!)
webView?.loadData(data!, MIMEType: "text/html", textEncodingName: "UTF-8", baseURL: NSURL(string: wkAttribute!.urlString))
//這種方式會出現viewdidstart后viewdidfinish一直不觸發的問題
// var request = NSURLRequest(URL: NSURL(string: wkAttribute!.urlString)!)
// webView?.loadRequest(request)
有知道具體原因的大大也可以出來解析下原因
