gpt4 book ai didi

ios - 当我单击 WKWebView 浏览器中的链接时,它会转到 safari

转载 作者:行者123 更新时间:2023-11-29 05:15:35 48 4
gpt4 key购买 nike

我如何让我的 WKWebview 浏览器在同一浏览器中打开链接,目前,如果我单击链接,它不会执行任何操作,只允许我在 Safari 中打开它。我怎样才能解决这个问题,以便当单击链接时它会在同一个 WkWebView 浏览器中打开?

import UIKit
import WebKit

class ViewController: UIViewController, WKNavigationDelegate {

@IBOutlet weak var webView: WKWebView!

//Web View
override func viewDidLoad() {
super.viewDidLoad()

let url = URL(string: "http://tweetdeck.twitter.com/")
let request = URLRequest(url: url!)

webView.load(request)
webView.navigationDelegate = self

}

最佳答案

请使用 WKNavigationDelegate 的decidePolicyFor方法尝试此代码

extension ViewController: WKNavigationDelegate {
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
if navigationAction.navigationType == .linkActivated {
guard let url = navigationAction.request.url else {
decisionHandler(.allow)
return
}

let components = URLComponents(url: url, resolvingAgainstBaseURL: false)
if components?.scheme == "http" || components?.scheme == "https"
{
UIApplication.shared.open(url)
decisionHandler(.cancel)
} else {
decisionHandler(.allow)
}
} else {
decisionHandler(.allow)
}
}}

关于ios - 当我单击 WKWebView 浏览器中的链接时,它会转到 safari,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59223198/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com