android显示加载图像同时旋转

时间:2012-12-06 07:03:54

标签: android image rotation loading

我有一个Android apk,主要是访问html5 web的webview。每当我旋转屏幕时,它会在重新加载/重新呈现网页时显示空白屏幕。由于网页需要通过服务器获取数据,因此可能需要几秒钟。

我只是想知道,是否有一种简单的方法可以在旋转时显示加载图像或徽标图像,而不是空白屏幕?

非常感谢。

1 个答案:

答案 0 :(得分:1)

您应该使用WebViewClient中所述的WebView spec回调以及显示类型<{p}的ProgressBar 例如

style="@android:style/Widget.ProgressBar.Large"

您的活动应包含以下内容:

private void onCreate(Bundle savedInstanceState){

        webView = (WebView) findViewById(R.id.webView);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebChromeClient(webChromeClient);

        spinner = (ProgressBar) findViewById(R.id.progress);
    }

    private WebChromeClient webChromeClient = new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress)   
        {
            if(progress == 100)
                spinner.setVisibility(View.GONE);
          }
        };

并且应在xml布局中定义进度条:

<ProgressBar
        android:id="@+id/progress"
        style="@android:style/Widget.ProgressBar.Large"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminate="true"
        android:visibility="visible" />