如何显示进度条,直到视图内容是出现在Android的 [英] how to show the Progress Bar till the WebView content is appears in android

查看:145
本文介绍了如何显示进度条,直到视图内容是出现在Android的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图给进度条,直到的WebView的内容加载。

i am trying to give Progress Bar till the content of the WebView is loaded.

在XML

            <ProgressBar android:id="@+id/progressbar"
                style="?android:attr/progressBarStyleHorizontal"
                android:layout_width="fill_parent"
                android:layout_height="5dp"
                android:max="100"
                android:visibility="gone" />

            <WebView
                android:id="@+id/intro2"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"/>

在Java

    ProgressBar pbr= (ProgressBar)findViewById(R.id.progressbar);
    pbr.setProgress(0);
    pbr.setVisibility(View.VISIBLE);

    WebView view = (WebView) findViewById(R.id.mgs1);
    String text = "<html><head><style type=\"text/css\">table, th, td { table-layout: fixed; padding: 2px;  text-align: center; background-color: #339933; border: 2px solid white; border-collapse: collapse; }\"></style></head> <body style=\"text-align:justify; color:#ffffff; margin-right :30px; background-color:#339933;\"> %s </body></Html>";
    String data = "<table style=width: 30%; > <tr><td>17</td> <td>24</td> <td>1</td> <td>8</td> <td>15</td></tr>  </table>";
    view.loadData(String.format(text, data), "text/html", "utf-8");
    view.getSettings().setDefaultFontSize(12);

在这之后我应该怎么办?

After this what should i do?

推荐答案

使用 setWebViewClient 对的WebView为你的目的如下。阅读其中t启动和停止进度条的评论。

Use setWebViewClient for webview as follows for your purpose. Read the comments for where t start and stop the progress bar.

view.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
            // Show progressbar
            pbr.setVisibility(View.VISIBLE);
        }

        @Override
        public void onReceivedError( WebView view, int errorCode, String description, String failingUrl) {
            // Show error 
            // Stop spinner or progressbar
            pbr.setVisibility(View.GONE);

        }

        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            // Stop spinner or progressBar
            pbr.setVisibility(View.GONE);

        }
    });

这篇关于如何显示进度条,直到视图内容是出现在Android的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆