有没有办法知道AnimationTimer
是否正在运行?我想像这样切换一个暂停菜单:
setOnKeyTyped(event -> {
switch (event.getCode()) {
case SPACE:
if (animationTimer.isRunning()) { // What should I put here?
animationTimer.stop();
}
else {
animationTimer.start();
}
break;
default:
break;
}
}
答案 0 :(得分:3)
您可以覆盖start
和stop
以保留有关计时器是否正在运行的信息:
class StatusTimer extends AnimationTimer {
private volatile boolean running;
@Override
public void start() {
super.start();
running = true;
}
@Override
public void stop() {
super.stop();
running = false;
}
public boolean isRunning() {
return running;
}
...
}
如果没有访问AnimationTimer
的私人成员,似乎没有别的办法。