如何在android中实现带进程文本的循环进度条?

时间:2013-08-14 10:03:53

标签: android android-asynctask android-progressbar

我正在尝试开发一个应用程序来理解android,application delete的默认浏览器的历史记录。每件事情都运转正常,我正在使用AsyncTask来完成ProgressDialog

的任务

以下是我删除History

的方法
ProgressDialog pd;

new AsyncTask<Void, Void, Void>() 
    {
        @Override
        protected void onPreExecute() 
        {
            pd = ProgressDialog.show(HistoryClean.this, "Loading..",
                    "Please Wait", true, false);
        }//End of onPreExecute method

        @Override
        protected Void doInBackground(Void... params) 
        {
            Browser.clearHistory(getContentResolver());

            return null;
        }//End of doInBackground method

        @Override
        protected void onPostExecute(Void result) 
        {
            pd.dismiss();               

        }//End of onPostExecute method
    }.execute((Void[]) null);//End of AsyncTask anonymous class

但我要实现ProgressDialog而不是CircularProgress,它可以显示进度值,如10% , 90%....

有些时候History可能会被删除得更快,有时可能会很慢,如何解决此问题并使用CircularProgress动态更新Progression Values栏。

提前致谢。

2 个答案:

答案 0 :(得分:0)

我在网上找到的最好的两个库是在github上 https://github.com/Todd-Davies/ProgressWheel https://github.com/f2prateek/progressbutton?source=c 希望能帮到你

答案 1 :(得分:0)

AsyncTask有方法onProgressUpdate(Progress... values),您可以通过调用doInBackground()来调用每个迭代,例如每次在publishProgress(Progress...)期间完成进度。

有关详细信息,请参阅docs