UIWebView出现的webViewDidFinishLoad一直没触发的问题的解决方案

这几天遇到一个很坑爹的问题。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))

        //这种方式会出现viewdidstartviewdidfinish一直不触发的问题

//        var  request = NSURLRequest(URL: NSURL(string: wkAttribute!.urlString)!)

//        webView?.loadRequest(request)

有知道具体原因的大大也可以出来解析下原因

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。