关于文档准备回调的Android webview

时间:2015-12-18 11:48:54

标签: android webview

使用WebView时,有没有办法检测文档DOM树是否已经加载完成?我知道WebViewClient提供了一个'onPageFinish'回调函数,但是在加载完所有Web资源后调用它。

如果网页运行缓慢请求(可能是错误请求,其http状态为“等待响应”),则在请求完成之前不会调用“onPageFinish”。我只想在网页的DOM树加载完成后捕获事件。

任何一个帮助?非常感谢。

2 个答案:

答案 0 :(得分:1)

使用onPageCommitVisible替换onPageFinished。

    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
        prDialog = new ProgressDialog(MainActivity.this);
        prDialog.setMessage("Please wait ...");
        prDialog.show();
    }

    @Override
    public void onPageCommitVisible(WebView view, String url) {
        super.onPageCommitVisible(view, url);
        if(prDialog != null) prDialog.dismiss();
    }

答案 1 :(得分:0)

这是我的例子。对于页面

boolean isPageLoaded;
webView.setWebViewClient(new WebViewClient(){

        public boolean shouldOverrideUrlLoading(WebView view, String url) {
          isPageLoaded=true;
            return isPageLoaded;
        }
        public void onPageFinished(WebView view, String url) {

       if(!isPageLoaded){}

        }
    });
  

我的网址加载示例已经完成。

if(!isPageLoaded){}

  

如果网址已完成,则