我正在开发一个应用程序,它基本上是一个 Web 视图,显示一个旨在模仿应用程序的网站。大多数 URL 将是内部的,但是会有一些会重定向到其他站点。所有这些链接都将具有 target="_blank"。
我花了几天时间浏览这个网站和其他网站,以找到一个可以在 safari 中打开 _blank URL 的解决方案,但是我尝试过的一切都失败了。
对此的任何帮助将不胜感激。我在视图控制器的代码下方添加了
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate, WKNavigationDelegate {
@IBOutlet weak var webView:WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
webView.uiDelegate = self
let myURL = URL(string:"https://example.com")
let myRequest = URLRequest(url: myURL!)
webView?.load(myRequest)
}}
func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? {
if let frame = navigationAction.targetFrame,
frame.isMainFrame {
return nil
}
webView.load(navigationAction.request)
return nil
}