Javafx在每个时间线之间暂停;循环;

Javafx在每个时间线之间暂停;循环;,java,javafx,Java,Javafx,目前,我有一个图像列表,其中显示了一定时间的时间线。然而,我想在每次之后有一个小的暂停,没有图像显示?有没有办法实现这种行为 以下是我目前使用的代码: ImageView imView = new ImageView(); Duration timeBetweenImages = Duration.millis(10000); Timeline timeline = new Timeline(); for (int i = 0; i < imageList.size(); i++) {

目前,我有一个图像列表,其中显示了一定时间的时间线。然而,我想在每次之后有一个小的暂停,没有图像显示?有没有办法实现这种行为

以下是我目前使用的代码:

ImageView imView = new ImageView();

Duration timeBetweenImages = Duration.millis(10000);
Timeline timeline = new Timeline();

for (int i = 0; i < imageList.size(); i++) {
    Image image = imageList.get(i);
    Duration frameTime = timeBetweenImages.multiply(i);
    KeyFrame frame = new KeyFrame(frameTime, e -> imView.setImage(image));
    timeline.getKeyFrames().add(frame);
}

timeline.play();
ImageView imView=newimageview();
持续时间间隔图像=持续时间。毫秒(10000);
时间线=新时间线();
对于(int i=0;iimView.setImage(图像));
timeline.getKeyFrames().add(frame);
}
timeline.play();
到目前为止,每张图片显示10秒。我希望在每10秒暂停一次后,暂停1秒,不显示任何图像。

ImageView imView=new ImageView();
ImageView imView = new ImageView();

Duration timeBetweenImages = Duration.seconds(11);
Duration pauseTime = Duration.seconds(1);
Timeline timeline = new Timeline();

for (int i = 0; i < imageList.size(); i++) {
    Image image = imageList.get(i);
    Duration frameTime = timeBetweenImages.multiply(i);
    KeyFrame frame = new KeyFrame(frameTime, e -> imView.setImage(image));
    timeline.getKeyFrames().add(frame);

    Duration pauseFrameTime = timeBetweenImages.multiply(i+1).subtract(pauseTime);
    KeyFrame pauseFrame = new KeyFrame(pauseFrameTime, e -> imView.setImage(null));
    timeline.getKeyFrames().add(pauseFrame);
}

timeline.play();
持续时间timeBetweenImages=持续时间。秒(11); 持续时间pauseTime=持续时间。秒(1); 时间线=新时间线(); 对于(int i=0;iimView.setImage(图像)); timeline.getKeyFrames().add(frame); 持续时间pauseFrameTime=图像之间的时间。乘(i+1)。减(pauseTime); KeyFrame pauseFrame=新关键帧(pauseFrameTime,e->imView.setImage(null)); timeline.getKeyFrames().add(pauseFrame); } timeline.play();
您知道是否可以将此功能与转换功能结合使用吗?我在ImageView中添加了一个旋转转换,需要6000毫秒,但遗憾的是,时间已经停止了:(我应该这样做:显示图像并将其旋转360度,然后暂停1秒,接下来的图像也是如此。不要使用
旋转转换
,只需将关键帧添加到使用
新键值的
时间线
(imView.rotateProperty,value)
。它不适用于
旋转转换
?因为以后我需要使用
并行转换
,以便同时执行多个转换。我认为这很难做到。一个
旋转转换
表示一个(“一次性”)旋转。你需要以离散的间隔进行多次旋转。我只想在现有的时间轴上添加关键帧。好的,再次感谢你,它像一个符咒一样与旋转一起工作:)这将是最好的演示。