如何将加载图像添加到webview?

时间:2011-07-11 15:52:06

标签: android

我在我的Android应用程序中使用webview ...每次打开网址时我的页面都是空白的,过了一段时间后网址内容出现...如何在此过渡期间在webview中添加加载图像??我试着打开两次,第一次加载本地内容,下次我想要提供的真实网址,但它不起作用,我认为异步调用有问题。

提前致谢^^

问候

1 个答案:

答案 0 :(得分:2)

以下是我的表现方式。

在我的主要布局中,我有WebView和ImageView的点。 WebView开始“消失”,加载图像“可见”。

<LinearLayout
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView android:id="@+id/imageLoading1"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:visibility="visible"
        android:src="@drawable/loadingimage"
        />
    <WebView android:id="@+id/webView1"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:visibility="gone"
        />

</LinearLayout>

然后在java中加载URL。一旦URL加载完毕,我就换掉了WebView的加载图像。

        WebView wv;
        wv = (WebView) findViewById(R.id.webView1);
        wv.setWebViewClient(new WebViewClient() {
            //this is to catch link clicks on your page, to prevent opening a new browser
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }

            @Override
            public void onPageFinished(WebView view, String url) {
                //hide loading image
                findViewById(R.id.imageLoading1).setVisibility(View.GONE);
                //show webview
                findViewById(R.id.webView1).setVisibility(View.VISIBLE);
            }
        });         
        wv.loadUrl("http://www.yourdomain.com/blahblahblah.htm");

请注意:我在这里使用的onPageFinished方法适用于我的简单应用程序,但是,它可能不适用于您的情况。有关如何完全监听页面以完成加载的deets,请参阅此主题 - &gt; How to listen for a WebView finishing loading a URL?