Android:在页面加载时显示临时图像

时间:2012-03-01 11:54:17

标签: android webview android-viewpager

我试图在页面完全加载到webView之前显示图像但是webview显示空白片刻,然后显示desided页面显示空白屏幕的时间我要显示一些图像。我是在viewpager中使用webview。

我尝试过onPageStarted,onPageFinished方法但没有任何成功。

以下是代码:

       web.setWebViewClient(new WebViewClient() {
                    // load url
                    public boolean shouldOverrideUrlLoading(WebView view, String url) {
                        view.loadUrl(url);
                        return true;
                    }

                    // when finish loading page
                    public void onPageFinished(WebView view, String url) {
                        web.setVisibility(View.VISIBLE);
                        image.setVisibility(View.GONE);
                    }
                });

                    <ImageView
                        android:id="@+id/imageviewloading"
                        android:layout_width="wrap_content"
                        android:layout_height="0dip"
                        android:layout_gravity="center"
                        android:layout_weight="1"
                        android:contentDescription="@string/app_name"
                        android:src="@drawable/photo_downloading" />

                    <WebView
                        android:id="@+id/website"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:visibility="gone" />
                </LinearLayout>

2 个答案:

答案 0 :(得分:2)

它的

   webview.setWebChromeClient(new WebChromeClient() { 
         public void onProgressChanged(WebView view, int progress) {   
                       // Activities and WebViews measure progress with different scales.    
         // The progress meter will automatically disappear when we reach 100% 
            activity.setProgress(progress * 1000);  
             }
              });

为我做了伎俩

答案 1 :(得分:1)

您可以在WebView中跳转页面加载启动和页面加载完成的事件,如下所示:

myWebView.setWebViewClient(new WebViewClient() {
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
        // Show placeholder icon here
        }

    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
        // Hide placeholder image here
        }
    });