【问题标题】:unable to show a progress bar properly无法正确显示进度条
【发布时间】:2013-08-26 19:22:07
【问题描述】:

我想在我的活动中显示一个进度条作为对按钮单击的响应。 我在另一个问题中读到,我应该使用异步任务来显示/不显示进度条,但是当我单击按钮时,进度条没有正确显示(它出现的时间要短得多) 有什么建议吗?

活动代码:

public void chooseContactFromList(View view){
ProgressBar pBar = (ProgressBar) findViewById(R.id.progressBar1);
circleActivity progressTask = (circleActivity) new   circleActivity(pBar).execute();

AlertDialog.Builder builder = new AlertDialog.Builder(this);
CharSequence[] cs=nameList.toArray(new CharSequence[nameList.size()]);
builder.setTitle("Make your selection");
    builder.setItems(cs, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {
            reciverNumber = phoneList.get(item);
        }
    });
    AlertDialog alert = builder.create();
    alert.show();
    progressTask.cancel(true);
}

AsyncTask 代码:

public class circleActivity extends AsyncTask<Void, Void, Void> {
private ProgressBar progressBar; 

public circleActivity(ProgressBar pBar) {
    progressBar=pBar;
}

protected void onPreExecute() {
    // TODO Auto-generated method stub
    super.onPreExecute();
    progressBar.setVisibility(View.VISIBLE);
}

@Override
protected void onPostExecute(Void result) {
    progressBar.setVisibility(View.INVISIBLE);
}


@Override
protected void onProgressUpdate(Void ... progress) {

}

@Override
protected Void doInBackground(Void... arg0) {
    // TODO Auto-generated method stub
    return null;
}

}

谢谢

【问题讨论】:

    标签: android android-asynctask android-activity


    【解决方案1】:

    由于您在doInBackground() 中什么都不做,progressBar 仅显示片刻。如果你真的想看,那就试试在doInBackground()做一些操作,这需要一些时间。

    例如。在 doInBackground 中尝试Thread.sleep(1000); 进行测试。

    我建议你参考以下链接。

    1. http://www.vogella.com/articles/AndroidBackgroundProcessing/article.html
    2. http://developer.android.com/reference/android/os/AsyncTask.html

    【讨论】:

      猜你喜欢
      • 2021-04-15
      • 2018-10-27
      • 1970-01-01
      • 1970-01-01
      • 2017-04-15
      • 2021-01-02
      • 1970-01-01
      • 1970-01-01
      • 2021-01-31
      相关资源
      最近更新 更多