WKWebView NSCoding support was broken in previous versions

WebKit was introduced in iOS 8 but was released with an error which resulted in a runtime crash if the configuration was done using Interface Builder. So in Xcode 9 if your project configuration has minimum OS support less than 11.0 and you try to add WebKit using interface builder Xcode shows an error. This is a correct behaviour as it prevents you from creating runtime crash on below iOS11.

You Can download latest Xcode 10 from here

One must add WKWebView through code in iOS application which has support for below iOS11.

//1.import
import WebKit
//2.Adding WKWebView to UI through code
var webView: WKWebView!
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
webView.translatesAutoresizingMaskIntoConstraints=false
self.view.translatesAutoresizingMaskIntoConstraints=false
self.view.addSubview(webView)
self.view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-(0)-[webView]-(0)-|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: ["webView" : webView]))
self.view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-(0)-[webView]-(0)-|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: ["webView" : webView]))
//3.Loading with URL 
let myURL = URL(string: "https://www.apple.com")
let myRequest = URLRequest(url: myURL!) webView.load(myRequest)