我已经创建了一个Web应用程序,并且我尽力为它创建一个APP以显示Web视图。就像它只是Web应用程序的全屏Web视图一样。效果很好,除了应用程序中有带有target =“ _ blank”的链接之外,这些链接通常会在新标签页中打开页面。现在没有。因此,我更改了webview函数,因此target =“ _ blank”将在同一标签中打开。但是在我的Web应用程序中,当用户在新选项卡上完成操作后,它将关闭该选项卡,并在单击target =“ _ blank”按钮之前返回到该页面所在的位置。 Xcode是否有可能仅在新选项卡中将其打开并在同一Web视图中显示。并且当使用Javascript关闭标签页时,旧标签页会重新出现吗?
为解释这种情况..用户位于设置页面上,并且连接成功后,将在新选项卡中连接其财务帐户,它将关闭该新选项卡并返回到设置页面,在此页面中每1如果帐户已连接,则第二个。
因此,我需要为连接添加第二个选项卡,但是当该窗口/选项卡关闭时。它应该返回到旧视图。仍在加载。
希望您能理解我的问题,并帮助我。
当前代码:
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate {
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
self.webView.uiDelegate = self
let myURL = URL(string:"https://mywebapplication.com/")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? {
if navigationAction.targetFrame == nil {
webView.load(navigationAction.request)
}
return nil
}
override var prefersStatusBarHidden: Bool {
return true
}
override func viewDidDisappear(_ animated: Bool) {
super.viewDidDisappear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: true)
}
}