AsyncTask使用ProgressBar(水平)

时间:2011-12-28 06:54:46

标签: android android-asynctask

您好我想在后台线程中执行一些冗长的操作,同时向用户显示“HORIZONTAL PROGRESS BAR”,并在后台进行操作时不断更新。我知道我可以通过asynctask实现这一点,但到目前为止我只使用了progressdialog并且它更加简单。请帮忙。

protected HttpResponse doInBackground(Void... params) 
    {
        Client.getParams().setIntParameter("http.connection.timeout",5000);
        try
        {

            return Client.execute(loginPost);
        }
        catch(Exception e)
        {
            return null;
        }
    }

现在这是我的doInBackground()方法,我怎么能真正知道正在进行的操作的状态才能更新我的progressBar

1 个答案:

答案 0 :(得分:1)

使用AsyncTask,更新ProgressBar并不复杂。将冗长的操作移至覆盖AsyncTask.doInBackground,无论您当前正在呼叫pbar.setProgress(percent_done),请致电publishProgress(percent_done),并将AsyncTask.onProgressUpdate(Integer... values)实施为

pbar.setProgress(values[0]);