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