如何隐藏"网页不可用"来自webview的页面/错误?

时间:2012-10-15 19:52:53

标签: android

我想隐藏该错误,只显示空白页面和对话框。

我该如何隐藏它?

2 个答案:

答案 0 :(得分:11)

不是那么明显。因为WebViewClient无论如何都会打开标准错误页面,即使你重写onReceivedError方法也是如此。所以我们需要在处理错误事件后打开自定义错误页面。

因此,您应该覆盖onReceivedError in WebViewClient,然后如果您处理所需的错误代码(请参阅WebViewClient中的ERROR_常量),您应该打开空白页面或其他页面以隐藏标准Android“网页不可用”页面。

这样的事情:

@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
    if (errorCode == neededErrorCode) {
        hideErrorPage(view);
    }
}

private void hideErrorPage(WebView view) {
    // Here we configurating our custom error page
    // It will be blank
    String customErrorPageHtml = "<html></html>";
    view.loadData(customErrorPageHtml, "text/html", null);
}

答案 1 :(得分:1)

您应该覆盖onReceiveError方法。

http://developer.android.com/reference/android/webkit/WebViewClient.html#onReceivedError%28android.webkit.WebView,%20int,%20java.lang.String,%20java.lang.String%29

在该方法中,只需创建自定义视图即可查看。例如,加载一个新的URL或一些自定义的HTML。