SAn*_*idD 0 datetime android timer textview
我的当前日期格式为“ 2014-05-14T16:23:11.810Z ”,计数器日期为“ 2014-05-15T16:24:13.810Z ”
我想在HH:MM:SS中的那些日期之间(即 TextView中的24:01:02)显示计数器时间,该时间持续更新1秒。像计时器
但是如何计算这两个日期之间的差并将其转换为HH:MM:SS
我写了一个简单的代码,其中倒数计时器在android中以毫秒显示:
CountDownTimer timer=new CountDownTimer(300000, 1000) {
public void onTick(long millisUntilFinished) {
txtNewBetTimer.setText(""+millisUntilFinished / 1000);
}
public void onFinish() {
txtNewBetTimer.setText("Time Up");
}
};
timer.start();
Run Code Online (Sandbox Code Playgroud)
我想要这样的输出:
请任何人帮助我...
提前致谢..
// try this way,hope this will help you...
CountDownTimer timer=new CountDownTimer(300000, 1000) {
public void onTick(long millisUntilFinished) {
txtNewBetTimer.setText(""+String.format("%d:%d:%d",
TimeUnit.MILLISECONDS.toHours(millisUntilFinished),
TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished),
TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished) -
TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.
toMinutes(millisUntilFinished))));
}
public void onFinish() {
txtNewBetTimer.setText("Time Up");
}
};
timer.start();
Alternative way
CountDownTimer timer=new CountDownTimer(300000, 1000) {
public void onTick(long millisUntilFinished) {
int seconds = (int) (millisUntilFinished / 1000) % 60 ;
int minutes = (int) ((millisUntilFinished / (1000*60)) % 60);
int hours = (int) ((millisUntilFinished / (1000*60*60)) % 24);
txtNewBetTimer.setText(String.format("%d:%d:%d",hours,minutes,seconds));
}
public void onFinish() {
txtNewBetTimer.setText("Time Up");
}
};
timer.start();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4958 次 |
最近记录: |