2017-02-10 125 views
-1

代码:Swift3 UIWebView的委托方法不会被调用

let termWebView = UIWebView(frame:CGRect(x:0, y:20, width:320, height:400)) 
termWebView.delegate = self 
self.view.addSubview(termWebView) 

     if let url = URL(string: “http://www.google.co.in”) 
      termWebView.loadRequest(request) 
     } 


     func webView(_ webView: UIWebView, didFailLoadWithError error: Error) 
     { 

     } 

     func webViewDidFinishLoad(webView: UIWebView!) 
     { 

     } 

我创建了一个简单的网页视图,并设置委托方法不被called.what的delegate.but是错误的代码的任何帮助将不胜感激。在此先感谢

+0

尝试把东西作为URL(例如https://www.google.com),'URL(字符串:“”)'是一个failable初始化,所以你的webview很可能不loadi NG。 –

+0

什么是你的代码中的'request',你已经在'loadRequest()'方法中传递了 –

回答

-1

试试这个 -

class TouchUIViewController: UIViewController, UIWebViewDelegate { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    let termWebView = UIWebView(frame:CGRect(x:0, y:20, width:320, height:400)) 
    termWebView.delegate = self 
    self.view.addSubview(termWebView) 
    let urlString = "http://www.google.co.in/" 

    if let url = URL(string: urlString.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!) { 
     let request = URLRequest(url: url as URL) 
     termWebView.loadRequest(request) 
    } 
    } 

    func webViewDidStartLoad(_ webView: UIWebView) { 

    } 

    func webView(_ webView: UIWebView, didFailLoadWithError error: Error) 
    { 

    } 

    func webViewDidFinishLoad(_ webView: UIWebView) 
    { 

    } 
} 
+0

请提及投票的原因...我想改进它.. –

+0

@PremaJannoti提供的提示是误导,即如果你想要从HTTP源加载内容,则需要在.plist文件中添加App Transport Security Settings - > Allow Arbitrary Load - > Yes –

+0

谢谢,那是我的错。 –

相关问题