简单的定时器,怎么讲时间间隔?
Simple timer, how to speak time intervals?
我有一个程序,其中有一个二十秒计时器 运行 在后台(使用服务)我想让应用程序记录剩余时间。例如,在五秒钟内,记录 "five seconds left!" onTick 方法在这方面可能非常有用,除了问题是它定期进行;所以我可能无法根据剩余时间调出特定消息。这是我的计时器:
非常感谢您的回复,因为很长一段时间以来,我一直在集思广益地想办法做到这一点。如果您需要更多信息,请随时询问!
{Rich}
在 onTick 方法中你可以做类似的事情
int timeRemaining = 20000 - millisUntilFinished;
if(timeRemaining % 1000 == 0){
Log.d("Time remaining", (timeRemaining % 1000) + " seconds left");
}
因为你已经有一个 1000 作为你的间隔,这可能有助于跳过这里的 if 块。
如果您担心将毫秒四舍五入到最接近的 1000,那么这可能会有所帮助
MathUtils.round((double) timeRemaining, -3);
这里的第二个参数有助于 select 四舍五入的精度,-1 表示十位,-2 表示百位,-3 表示千位等等。
祝一切顺利:)
我有一个程序,其中有一个二十秒计时器 运行 在后台(使用服务)我想让应用程序记录剩余时间。例如,在五秒钟内,记录 "five seconds left!" onTick 方法在这方面可能非常有用,除了问题是它定期进行;所以我可能无法根据剩余时间调出特定消息。这是我的计时器:
非常感谢您的回复,因为很长一段时间以来,我一直在集思广益地想办法做到这一点。如果您需要更多信息,请随时询问!
{Rich}
在 onTick 方法中你可以做类似的事情
int timeRemaining = 20000 - millisUntilFinished;
if(timeRemaining % 1000 == 0){
Log.d("Time remaining", (timeRemaining % 1000) + " seconds left");
}
因为你已经有一个 1000 作为你的间隔,这可能有助于跳过这里的 if 块。
如果您担心将毫秒四舍五入到最接近的 1000,那么这可能会有所帮助
MathUtils.round((double) timeRemaining, -3);
这里的第二个参数有助于 select 四舍五入的精度,-1 表示十位,-2 表示百位,-3 表示千位等等。
祝一切顺利:)