Java 从某个时间开始继续实时计数
我有一个可以计算时间的应用程序。开始时间将存储在数据库中。我希望应用程序从用户启动应用程序的特定时间开始实时计数Java 从某个时间开始继续实时计数,java,android,timer,real-time,Java,Android,Timer,Real Time,我有一个可以计算时间的应用程序。开始时间将存储在数据库中。我希望应用程序从用户启动应用程序的特定时间开始实时计数 private void countTime(String inDate){ onStartControll = true; long inDateInt = Long.parseLong(inDate); long dateNow = Long.parseLong(String.format("%02d",date.getTime())); long
private void countTime(String inDate){
onStartControll = true;
long inDateInt = Long.parseLong(inDate);
long dateNow = Long.parseLong(String.format("%02d",date.getTime()));
long timeCounted = dateNow - inDateInt;
startTime = timeCounted;
timeInMilliseconds = timeCounted;
customHandler.postDelayed(updateTimerThread, 0);
}
private Runnable updateTimerThread = new Runnable() {
public void run() {
if(onStartControll == false) {
timeInMilliseconds = SystemClock.uptimeMillis() - startTime;
}
updatedTime = timeSwapBuff + timeInMilliseconds;
int secs = (int) (updatedTime / 1000);
int mins = (int) (secs / 60);
int minsShown = secs / 60 % 60;
int hours = (int) (mins / 60);
secs = secs % 60;
int milliseconds = (int) (updatedTime % 100);
timerValue.setText(String.format("%02d", hours) + ":" + String.format("%02d", minsShown) + ":"
+ String.format("%02d", secs));
customHandler.postDelayed(this, 0);
}
};
问题是计时器在启动时不继续计数 那么到底是什么问题呢?是的,问题是当我打开/启动应用程序时,它从不继续计数@BojanKsenemancustomHandler.postDelayed(该值为0);增加值,您正在阻止UII。它没有帮助,它不计算i实时@BojanKsenemanAndroid不是实时操作系统。