2011-02-25 79 views

回答

5

,您可以更新使用CountDownTimer

bar = (ProgressBar) findViewById(R.id.progress); 
    bar.setProgress(total); 
    int twoMin = 2 * 60 * 1000; // 2 minutes in milli seconds 

    /** CountDownTimer starts with 2 minutes and every onTick is 1 second */ 
    cdt = new CountDownTimer(twoMin, 1000) { 

     public void onTick(long millisUntilFinished) { 

      total = (int) ((dTotal/120) * 100); 
      bar.setProgress(total); 
     } 

     public void onFinish() { 
      // DO something when 2 minutes is up 
     } 
    }.start(); 
+1

CountdownTimer会在AyncTask中工作吗? – 2012-05-08 16:59:01

+0

@GauravAgarwal:不,根据其单屏幕源,它使用默认处理程序,因此在主循环(即UI)上调用每个“滴答”和“完成”。如果你想定期在后台执行某些事情,你可以在'onTick'上启动你的'AsyncTask' – TWiStErRob 2014-12-01 14:17:25

1

我建议你使用进度对话框而不是使用进度条。还可以使用线程进度对话框进行设置。

请检查这个link。也可以从官方的Android博客链接。 Link请参阅使用线程在第二个示例中创建进度对话框 &。

+0

好的......如何通过线程进行对话来实现它。?你可以给一些链接或样本相同。 – OnkarDhane 2011-02-25 05:45:02

+0

@Onkar: - 编辑答案 – 2011-02-25 05:47:43

0

Onkar你的进度...的AsyncTask既可以举办时间密集型任务和报告进度,如果时间密集的任务可以分解为子任务。 AsyncTask使用泛型来实现它的魔力。进度类型将是三个“必需的正式类型参数”的中间类型,即<Params,Progress,Result>

JAL

+0

你可以显示或指向一个示例吗? – 2012-05-08 16:57:43

相关问题