Android:通过Handler执行Runnable的时间

时间:2012-02-23 21:08:12

标签: android time handler runnable

我的应用程序中有一个计时器关闭了使用处理程序实现的应用程序,我发布了一个延迟的runnable“quit”。当用户单击计时器图标时,它还应显示剩余时间。我怎么能得到这些数据? 我应该实现一个可以计算秒数并使用该数据的对象吗?

1 个答案:

答案 0 :(得分:4)

我更喜欢将ScheduledExecutorServiceScheduledFuture一起使用,这些API比Handler和Timer IMO更高效,更强大:

ScheduledExecutorService scheduledTaskExecutor = Executors.newScheduledThreadPool(1);
Runnable quitTask = new Runnable();

// schedule quit task in 2 minutes:
ScheduledFuture scheduleFuture = scheduledTaskExecutor.schedule(quitTask, 2, TimeUnit.MINUTES);

... ...
// At some point in the future, if you want to get how much time left:
long timeLeft = scheduleFuture.getDelay(TimeUnit.MINUTES);
... ...

希望有所帮助。