title: swift 3 WKWebView delegate WKNavigationDelegate Ambiguous method
body: <p>I created a class named <code>JSBridge</code>, this class implements the <code>WKNavigationDelegate</code>, I did some custom stuff in the protocol method, and then call another <code>UIViewController</code>'s default <code>WKNavigationDelegate</code>, for example <code>WebViewController</code> aka <code>webViewDelegate</code>, so I have to do like this </p>
  
  <pre><code>func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -&gt; Void) {
      guard let webViewDelegate = webViewDelegate , self.webView == webView else {
          decisionHandler(.allow)
          return
      }
  
      //do something here then call `WebViewController`'s implementation
      if webViewDelegate.responds(to: #selector(webViewDelegate.webView(_:decidePolicyFor:decisionHandler:))) {
              webViewDelegate.webView!(webView, decidePolicyFor: navigationAction, decisionHandler: decisionHandler)
          } else {
              decisionHandler(.allow)
          }
  }
  
  func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -&gt; Void) {
      guard let webViewDelegate = webViewDelegate , self.webView == webView else {
          decisionHandler(.allow)
          return
      }
  
      //do something here then 
      if webViewDelegate.responds(to: #selector(webViewDelegate.webView(_:decidePolicyFor:decisionHandler:))) {
          webViewDelegate.webView!(webView, decidePolicyFor: navigationResponse, decisionHandler: decisionHandler)
      } else {
          decisionHandler(.allow)
      }
  }
  </code></pre>
  
  <p>my problem is in xcode8(swift3) the compiler gives me the error:
       <code>Ambiguous use of 'webView(_:decidePolicyFor:decisionHandler:)'</code>, they have the same name to compiler</p>
  
  <pre><code>func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -&gt; Void)
  func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -&gt; Void)
  </code></pre>