在Gdx中,定时器可以使用Timer来实现,如:
Timer timer = new Timer();
Task timerTask = new Task() {
@Override
public void run() {
}
};
timer.scheduleTask(timerTask, 0, 1, 20);// 0s之后执行,每次间隔1s,执行20次。
下面我们使用Action来实现上面的效果:
Action[] sAction = new Action[20];// 一共执行20次
// 使用action实现定时器
for (int i = 0; i < sAction.length; i++) {
Action delayedAction = Actions.run(new Runnable() {
@Override
public void run() {
System.out.println("time:" + (System.currentTimeMillis() / 1000) + ",执行something");
}
});
// 延迟1s后执行delayedAction
Action action = Actions.delay(1f, delayedAction);
sAction[i] = action;
}
// 将Action加到Stage中进行执行
getStage().addAction(Actions.sequence(sAction));
时间: 2024-10-10 11:17:35