如何在加载其内容后将webVisibility(View.VISIBLE)设置为webView?

时间:2012-07-11 11:15:20

标签: android android-webview

在我的应用中有一个广告网络视图,即在活动开始时调用网址。 一切都很好,除了一件小事,它更像是一个可见性问题...... 所以事情是当我开始活动时,我确实看到页面加载..大约在0.3秒内文本出现然后是图片,并且所有内容以某种方式从左到右浮动。它不太好,我想将我的webView的可见性设置为VIEW.GONE,直到它完成加载,然后我可以设置它可见...

有没有一个好的,有效的方法来实现这个目标? 重要的是必须在每个操作系统版本的Android 2.3到4.0上运行。

我已经尝试过onPageFinished和PictureListener related to this stack question here,但没有希望,onPageFinished只能在4.0上正常工作而PictureListener用于图片,这不是最好的方法,如果不同的话具有不同数量图片的广告。 (如果根本没有图片怎么办......)

如果你知道一种方式,请告诉我。谢谢大家。

2 个答案:

答案 0 :(得分:2)

你试过WebChromeClient吗?

webView.setWebChromeClient(new WebChromeClient() {

    public void onProgressChanged(WebView view, int progress) {
        if (progress == 100) {
            // dismisses the PD
            dismissLoadingDialog();
        }
    }
});
    webView.loadUrl("your-Url");
// show message dialog here
createLoadingDialog();

我在2.3到4.0操作系统上使用过这个没有任何问题

答案 1 :(得分:1)

在onPageFinished方法中使用webview可见性 视图不显示util所有页面加载。

webView1.setWebViewClient(new WebViewClient(){

                                                @Override
                                                public void onPageFinished(WebView view, String url) {
                                                    super.onPageFinished(view, url);

                                                    webView1.setVisibility(View.VISIBLE);

                                                }