在JavaFX中完成所有当前运行的动画后,如何添加要执行的内容?

在JavaFX中完成所有当前运行的动画后,如何添加要执行的内容?,java,animation,javafx,Java,Animation,Javafx,我将GridPane子类化以在我的游戏(2048)上显示分幅,并且由于动画在GridPane上不能很好地工作,每当玩家移动分幅时,我都有一个透明的窗格覆盖,它位于我将分幅移动到的GridPane顶部,并且是我的动画运行的表面。我的观点非常“愚蠢”,对游戏状态一无所知,只要有人告诉我就运行动画 我希望能够在所有动画完成后更新窗格和网格窗格上的一些内容(目前无法做到这一点,因为当动画运行时,它不知道它是当前游戏移动的第一个、中间的还是最后一个动画)。这是我在完成单个动画后用于更新的内容: trans

我将GridPane子类化以在我的游戏(2048)上显示分幅,并且由于动画在GridPane上不能很好地工作,每当玩家移动分幅时,我都有一个透明的窗格覆盖,它位于我将分幅移动到的GridPane顶部,并且是我的动画运行的表面。我的观点非常“愚蠢”,对游戏状态一无所知,只要有人告诉我就运行动画

我希望能够在所有动画完成后更新窗格和网格窗格上的一些内容(目前无法做到这一点,因为当动画运行时,它不知道它是当前游戏移动的第一个、中间的还是最后一个动画)。这是我在完成单个动画后用于更新的内容:

transition.setOnFinished(event -> {
   // executed after a single animation
}

但是,我希望能够在所有活动动画完成后做一些事情。这可能吗?如果不是,那么最好的解决方法是什么?

你知道计划运行多少动画吗?@James\u D否,数量取决于移动了多少块瓷砖,以及将组合多少块瓷砖(如果它们具有相同的值)。如果你了解2048游戏,你会知道我在说什么,但你肯定知道(或者可以弄清楚)什么时候开始动画?但如果不是,您是否同时运行它们?如果是这样,您可以将它们全部放入一个
paralleltransformation
,并设置一个带有并行转换的
onFinished
处理程序。@James\u D当单元格移动或合并时,我只会从模型中得到通知。但我要尝试一下,设置一个并行转换,并添加一个接口方法来通知我的视图何时启动它