ios - WKWebView - 不从 Web 视图加载页面
问题描述
我正在显示一个网页WKWebView
。它加载成功。页面上有 3 个按钮 - X、Y、Z。当点击 X 和 Y 时,web view
内容会发生应有的变化。当 Z 被点击时,什么也没有发生。我在 Safari Mobile 中尝试了相同的链接。X 和 Y 的工作方式与WKWebView
. Z 重定向到另一个页面。最后一个不会发生在应用程序中。有什么问题?先感谢您。
要加载我正在使用的显示页面:
if let url = URL(string: <My_URL>) {
let request = URLRequest(url: url)
wkWebView.load(request)
}
NSAllowsArbitraryLoads
被设定为true
解决方案
您是否实现了WKNavigationDelegate方法?
点击 Z 按钮时,应该调用此方法(否则,可能是您的 WEB 代码或 WKWebView 配置有问题)
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
decisionHandler(.allow)
}
如果一切正常,您可以通过这些调查一些问题
func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error)
func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error)