WKWebViewでwebサイトを表示させているのですが、その中のリンクをアプリ内ブラウザではなくsafariで開きたいと思っています。
しかし下記コードを記述している状態なのですがアプリ内ブラウザで表示されてしまいます。
もしよろしければアドバイスいただけましたら幸いでございます。
class ViewController: UIViewController, WKNavigationDelegate, WKUIDelegate { @IBOutlet weak var WV: WKWebView! var webView: WKWebView! // safari で開く @IBAction func safari(_: AnyObject) { let url = self.webView?.url UIApplication.shared.open(url!, options: [:], completionHandler: nil) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // WKNavigationDelegate func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) { // リンククリックでSafariに if navigationAction.navigationType == WKNavigationType.linkActivated { UIApplication.shared.open(navigationAction.request.url!) decisionHandler(.cancel) } else { decisionHandler(.allow) } } // WKUIDelegate func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? { // リンククリックでSafariに if navigationAction.navigationType == WKNavigationType.linkActivated { UIApplication.shared.open(navigationAction.request.url!) } if navigationAction.targetFrame == nil { webView.load(navigationAction.request) } return nil } } }