JavaFX 在转到下一个方法之前等待动画方法完成

Posted

技术标签:

【中文标题】JavaFX 在转到下一个方法之前等待动画方法完成【英文标题】:JavaFX wait for animation method to finish before going to next method 【发布时间】:2016-10-11 15:44:24 【问题描述】:

如何让 JavaFX 在移动到下一个方法之前等待一个带有动画的方法完成?所以我的代码如下:

public void spinWheel()
        RotateTransition rotation = new 
        rotation.setByAngle(-(720+(15*(i+(24-finalIndex)))));
        rotation.play();
        wheelResult=wheel.spinWheel(i);

spinButton.setOnAction(e->
    spinButton.setDisable(true);
    wheelGui.spinWheel();
    spinGame();
    );

所以 spinwheel() 方法就是动画。它本质上是一个旋转的***。打印一些代码并在某些情况下重新激活按钮之后的方法。然而,这是瞬时的。我希望动画在下一个方法运行之前完成,因为文本很快或者按钮再次打开并且可以中断动作。

【问题讨论】:

如果都是动画,考虑使用SequentialTransition 【参考方案1】:

你可以使用

RotateTransition rotateTransition = new RotateTransition();
rotateTransition.setOnFinished(e -> yourMethod())
rotateTransition.play();

【讨论】:

谢谢!我只是在第一种方法中嵌入了第二种方法,它运行良好。非常感谢。

以上是关于JavaFX 在转到下一个方法之前等待动画方法完成的主要内容,如果未能解决你的问题,请参考以下文章

在转到下一个视图控制器(Swift)之前进行异步调用

确保在转到下一页之前发送了Google Analytics事件

jQuery ScrollTop:每个动画都需要在跳转到下一个之前完成

如何使 segue 等待功能在按钮按下时完成?

如何在转到角度之前将 SKSpriteNode 旋转 360°

Nextjs如何在转到下一页时不卸载上一页(保持状态)