【发布时间】:2021-02-22 18:22:27
【问题描述】:
我试图通过使用 WKNavigationDelegate 并实现以下功能来防止用户导航到网站上的不同页面:
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
if let urlStr = navigationAction.request.url?.absoluteString {
if urlStr == "https://random.ca/#/profile" {
decisionHandler(.cancel)
return
}
}
decisionHandler(.allow)
}
这个函数似乎只在我第一次加载网站的主页时被调用,当我导航到这个网站内的其他页面时它没有被触发,所以我不能阻止用户导航到这些页面。
任何建议将不胜感激。
【问题讨论】:
-
尝试删除“return”。或删除最后一部分“decisionHandler(.allow)”
-
感谢您的评论金托。不幸的是,这样做并没有解决我的问题。