Android进度条(不断更新)

时间:2011-11-22 02:41:11

标签: java android

以下代码在单击按钮时更新一组进度条。 (这些值是随机生成的测试值)。

出于测试目的,我理想地希望进度条不断更新。即按下按钮并进度条更新,等待一两秒钟再重新更新,等等。

我在onClick方法中添加了一个while循环,但它导致应用程序崩溃。

有谁知道如何实现这个?也许我错过了一些非常简单的事情?

提前感谢您的帮助!

   Button dtTest = (Button) findViewById(R.id.button1);
   dtTest.setOnClickListener(new View.OnClickListener() {
       public void onClick(View view) {

                    // Generate Data Table
                    int pb1 = (int)(Math.random()*100);
                    int pb2 = (int)(Math.random()*100);
                    int pb3 = (int)(Math.random()*100);
                    int pb4 = (int)(Math.random()*100);

                    ProgressBar pbFeedPump = (ProgressBar) findViewById(R.id.progressBar1);
                    ProgressBar pbMediaFilter = (ProgressBar) findViewById(R.id.progressBar2);
                    ProgressBar pbCartridges = (ProgressBar) findViewById(R.id.progressBar3);
                    ProgressBar pbMotor = (ProgressBar) findViewById(R.id.progressBar4);

                    // Update Progress Bars
                    pbFeedPump.setProgress(pb1);
                    pbMediaFilter.setProgress(pb2);
                    pbCartridges.setProgress(pb3);
                    pbMotor.setProgress(pb4);

       }
   });

2 个答案:

答案 0 :(得分:1)

最简单的方法是使用Timer,尤其是scheduleAtFixedRate重载之一。

答案 1 :(得分:0)

我认为你应该设定进度的最大值

progDialog.setMax(100);