gpt4 book ai didi

ios - WKWebView 包装器 - 加载 WKWebView 中的所有链接

转载 作者:行者123 更新时间:2023-11-30 13:00:37 27 4
gpt4 key购买 nike

WKWebView 允许您通过 Safari 打开外部链接(与基本 url 不同的链接)。
但是,有时您想打开 WKWebView 本身内的所有链接.
例如,假设您有一个基本网址 "https://trader.finmarkets.com" 但您有一个链接 "https://secure.transactions.finmarkets .com”您还想在 WKWebView 中打开,而不使用将在外部打开的 UIApplication.shared.open(url)。

问题是:
如何包装我的网站以打开 WKWebview 上的所有链接?
(当然电子邮件和电话号码除外)

谢谢。

最佳答案

你可以尝试这样的事情:

func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) {
if navigationAction.navigationType == .LinkActivated {
if let newURL = navigationAction.request.URL &&
UIApplication.sharedApplication().canOpenURL(newURL) &&
UIApplication.sharedApplication().openURL(newURL) {
print(newURL)
print("User clicked on link. Open it internally.")
decisionHandler(.Allow)
} else {
print("Cannot open URL")
}
} else {
print("Not a user click")
}
}

您可能需要稍微调整一下才能使其完美工作,但我认为它可能符合您正在寻找的路线。

关于ios - WKWebView 包装器 - 加载 WKWebView 中的所有链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39930875/

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