无法在我的代码中实现进度条

时间:2013-11-29 11:49:23

标签: android android-progressbar

我试图想办法在我的代码中使用Progress Bar或任何其他带有加载栏的工作Dialog,但我找不到任何好的代码示例,它们太简单了,不会给你一个当代码更复杂时,如何使用它的想法。例如,以下是Android文档中的代码:

public class MyActivity extends Activity {
     private static final int PROGRESS = 0x1;
     private ProgressBar mProgress;
     private int mProgressStatus = 0;
     private Handler mHandler = new Handler();

     protected void onCreate(Bundle icicle) {
         super.onCreate(icicle);
         setContentView(R.layout.progressbar_activity);
         mProgress = (ProgressBar) findViewById(R.id.progress_bar);
         // Start lengthy operation in a background thread
         new Thread(new Runnable() {
             public void run() {
                 while (mProgressStatus < 100) {
                     mProgressStatus = doWork();

                     // Update the progress bar
                     mHandler.post(new Runnable() {
                         public void run() {
                             mProgress.setProgress(mProgressStatus);
                         }
                     });
                 }
             }
         }).start();
     }
 } 

以下是我的应用程序的工作原理: 按下按钮时,它会启动异步任务,如此

public void findProduct(View v) {
            operationID = 1;
            JSONGetProduct getp = new JSONGetProduct(this);
            getp.execute();
        }
}

然后这个asynctask用delegate回调,在这个方法中,onFinishedParsing我有一个开关,在每种情况下它都启动另一个asynctask

@Override
public void onFinishedParsing(ArrayList<?> objects) {
    switch (operationID) {
    case 1:
        operationID = 2;
        JSONGetPrice getprice = new JSONGetPrice(this);
        getprice.execute();
        break;
    case 2:
        operationID = 3;
        JSONGetShop gets = new JSONGetShop(this);
        gets.execute();
        break;
        case 3:
               // starts another activity
                break;

我需要的是按下按钮初始化进度条,在每种情况下我都可以设置它的进度,然后在最后的情况下删除进度条....我该怎么办?< / p>

1 个答案:

答案 0 :(得分:0)

我认为这可能是您的代码的AsyncTask,在这里我留下了一个链接,他们解释并添加了一个进度条。

AsynckTask with progress bar

我希望它会有所帮助