用webview和刷新按钮加载android

时间:2014-07-01 21:18:57

标签: android webview

我的应用程序中有一个WebView,但是当没有互联网连接时,它会显示来自谷歌的普通网页,上面写着“没有互联网连接”。我想要它显示两件事:

1)如果没有互联网连接,我希望在那里说“没有互联网连接”,并有一个刷新按钮。

2)当应用程序启动或尝试连接时,它将显示进度条/加载屏幕。

以下是一些WebView脚本:

 WebView wv = (WebView) view.findViewById(R.id.webViewF);

        wv.getSettings().setJavaScriptEnabled(true);

        String url = "http://m.facebook.com/";
        wv.getSettings().setJavaScriptEnabled(true);
        wv.loadUrl(url);
        wv.setWebChromeClient(new WebChromeClient()); 
        wv.setWebViewClient(new WebViewClient());





public class myWebClient extends WebViewClient
{


    @Override

    public void onReceivedError(WebView view, int errorCode,
            String description, String failingUrl) {
         if (errorCode == ERROR_CONNECT)
         {
              What should i write here ??!!!

         }
             // TODO Auto-generated method stub
        super.onReceivedError(view, errorCode, description, failingUrl);
    }


}

1 个答案:

答案 0 :(得分:1)

创建自定义WebView类(创建一个类并对其进行扩展)并实现onReceivedError

  

向主机应用程序报告错误。这些错误是   不可恢复的(即主要资源不可用)。 errorCode   参数对应于ERROR_ *常量之一。

     

参数   查看正在启动回调的WebView。

     

errorCode 与ERROR_ *值对应的错误代码。

     

description 描述错误的字符串。 failingUrl那个网址   无法加载。

您可以处理错误:

int ERROR_AUTHENTICATION    User authentication failed on server
int ERROR_BAD_URL   Malformed URL
int ERROR_CONNECT   Failed to connect to the server
int ERROR_FAILED_SSL_HANDSHAKE  Failed to perform SSL handshake
int ERROR_FILE  Generic file error
int ERROR_FILE_NOT_FOUND    File not found
int ERROR_HOST_LOOKUP   Server or proxy hostname lookup failed
int ERROR_IO    Failed to read or write to the server
int ERROR_PROXY_AUTHENTICATION  User authentication failed on proxy
int ERROR_REDIRECT_LOOP Too many redirects
int ERROR_TIMEOUT   Connection timed out
int ERROR_TOO_MANY_REQUESTS Too many requests during this load
int ERROR_UNKNOWN   Generic error
int ERROR_UNSUPPORTED_AUTH_SCHEME   Unsupported authentication scheme (not basic or digest)
int ERROR_UNSUPPORTED_SCHEME    Unsupported URI scheme

对于您的#2,请使用onPageStartedonPageFinished