嗨,我正在尝试为我的Libgdx游戏创建一个简单的10秒倒计时计时器,但它会继续打印剩余0.0。屏幕启动时,我将创建一个gotime变量来保存初始开始时间。然后,我通过将gotime加10000来设置目标时间变量targettime。那么可以肯定,这只是用当前时间减去目标时间的问题,但这是行不通的。我相信这是因为由于某种原因,我的gotime和targettime在logcat中打印了相同的时间戳,并带有一个奇怪的E号,例如以下1.3980063E12。我正在使用Time.Utils.millis()来获取时间。谢谢。
gotime=TimeUtils.millis();
targettime=gotime+10000;
timeleft=targettime-TimeUtils.millis();
最佳答案
试试这个
boolean TimerRunning = true;
int Timer = 10;
new Thread(new Runnable() {
public void run() {
while(TimerRunning == true) {
Thread.sleep(1000);
if(Timer == 0) {
TimerRunning = false;
}
else {
Timer = Timer - 1;
}
}
}).start();
然后也使用A方法获取变量计时器!完成了!