【问题标题】:switch view if the Webview can't loading the URL?如果 Webview 无法加载 URL,则切换视图?
【发布时间】:2021-09-02 08:31:07
【问题描述】:

我的屏幕上有 2 个视图,第一个是 Webview,第二个是静态视图“errorView”,错误消息“设置为隐藏”。如果我们将网站加载到 Webview 时出错,我正在尝试加载 errorView。

@objc private func loadURL() {
 
        guard let url = URL(string: "https://www.hackingwi") else {
            self.errroLoadingWebView.isHidden = false
            return
        }
        webView?.load(URLRequest(url: url))
        webView?.allowsBackForwardNavigationGestures = true
    }

【问题讨论】:

  • 你能说得更具体些吗,你想达到什么目的?
  • 也许您正在寻找WKWebView.navigationDelegate。它有一个名为func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) 的方法

标签: ios swift error-handling uiwebview


【解决方案1】:

您可以使用WKNavigationDelegate

设置委托

webView.uiDelegate = self
webView.navigationDelegate = self
class StaticWebPageVC: WKNavigationDelegate, WKUIDelegate {
    func webView(_: WKWebView, didFinish _: WKNavigation!) {
        // Web view loaded
    }
    
    func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
        // Show error view
    }
    
    func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error) {
        // Show error view
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多