现在,我已经创建了进度条,我想分配进度条的时间(例如2分钟) 用户必须能够在运行进度条时看到时间。 我们如何才能实现这一目标?
答案 0 :(得分:5)
您可以使用CountDownTimer
更新ProgressBar 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 :(得分:1)
答案 2 :(得分:0)
Onkar ... AsyncTask可以承载时间密集型任务并报告进度,如果时间密集型任务可以分解为子任务。 AsyncTask使用泛型来实现它的魔力。进度类型是三个“必需的正式类型参数”的中间类型,即<Params,Progress,Result>
。
JAL