NSInternalInconsistencyException: webView:decidePolicyForNavigationAction:decisionHandler was not called
<p>I'm trying to disable link loading inside a wkWebView, so I'm using decidePolicyForNavigationAction for this, but my app gives me this error:</p>

<blockquote>
  <p>Terminating app due to uncaught exception 'NSInternalInconsistencyException'
  reason: 'Completion handler passed to -[ViewController webView:decidePolicyForNavigationAction:decisionHandler:] was not called'</p>
</blockquote>

<p>This is the simplified code that gives me this error:</p>

<pre><code>import UIKit
import WebKit

class ViewController: UIViewController, WKNavigationDelegate {

    var webView: WKWebView

    required init?(coder aDecoder: NSCoder) {
        let config = WKWebViewConfiguration()
        self.webView = WKWebView(frame: CGRectZero, configuration: config)
        super.init(coder: aDecoder)
        self.webView.navigationDelegate = self
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        view.insertSubview(webView, atIndex: 1)
        webView.translatesAutoresizingMaskIntoConstraints = false
        let height = NSLayoutConstraint(item: webView, attribute: .Height, relatedBy: .Equal, toItem: view, attribute: .Height, multiplier: 1, constant: -44)
        let width = NSLayoutConstraint(item: webView, attribute: .Width, relatedBy: .Equal, toItem: view, attribute: .Width, multiplier: 1, constant: 0)
        view.addConstraints([height, width])


        webView.loadRequest(NSURLRequest(URL:NSURL(string:"https://www.apple.com")!))


    }

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

    func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: ((WKNavigationActionPolicy) -&gt; Void)) {

        if (navigationAction.navigationType == WKNavigationType.LinkActivated){
            print(navigationAction.request.URL?.relativeString)
            decisionHandler(WKNavigationActionPolicy.Cancel)
        }
    }
}
</code></pre>