Module  javafx.graphics
软件包  javafx.animation

Class Timeline



  • public final class Timeline
    extends Animation
    A Timeline可以用于定义任何WritableValue的自由格式动画,例如,全部为JavaFX Properties

    Timeline ,由一个或多个所定义KeyFrame S,处理从个人KeyFrame顺序,在由指定的顺序KeyFrame.time 定义为KeyFrame.values键值的动画属性在KeyFrameTimeline的初始位置的指定时间内插入目标键值,取决于Timeline的方向。

    Timeline在指定时间间隔内或之后处理个人KeyFrame ,不保证KeyFrame处理时的时间。

    Animation.cycleDurationProperty()将被设置为Timeline的keyFrames的最大时间值。

    如果KeyFrame为不设置time==0s瞬间,人会使用在当时的电流的目标值进行合成Animation.play()Animation.playFromStart()被调用。

    无法更改keyFramesTimeline 如果值keyFrames变更为运行Timeline ,它必须停止并再次开始拿起新的价值。

    一个简单的时间线可以这样创建:

       final Timeline timeline = new Timeline(); timeline.setCycleCount(2); timeline.setAutoReverse(true); timeline.getKeyFrames().add(new KeyFrame(Duration.millis(5000), new KeyValue (node.translateXProperty(), 25))); timeline.play();  

    该时间轴将运行10秒,将节点由x轴设为25,然后在第二个周期返回到0。

    警告:正在从FX运行时引用正在运行的时间轴。 如果没有正确停止,无限时间线可能会导致内存泄漏。 所有具有动画属性的对象都不会被垃圾回收。

    从以下版本开始:
    JavaFX 2.0
    另请参见:
    AnimationKeyFrameKeyValue
    • 构造方法详细信息

      • Timeline

        public Timeline​(double targetFramerate,
                        KeyFrame... keyFrames)
        构造函数为Timeline 这个构造函数允许定义一个Animation.targetFramerate
        参数
        targetFramerate -自定义的目标帧速率此 Timeline
        keyFrames - 这个 Timeline的关键帧
      • Timeline

        public Timeline​(KeyFrame... keyFrames)
        构造函数为 Timeline
        参数
        keyFrames - 这个 Timeline的关键帧
      • Timeline

        public Timeline​(double targetFramerate)
        构造函数为Timeline 这个构造函数允许定义一个Animation.targetFramerate
        参数
        targetFramerate -自定义的目标帧速率此 Timeline
      • Timeline

        public Timeline​()
        构造函数为 Timeline
    • 方法详细信息

      • stop

        public void stop​()
        停止动画并将播放头重置到其初始位置。 如果动画当前没有运行,则此方法无效。

        注意:

        • stop()是一个异步调用, Animation可能不会立即停止。
        重写:
        stopAnimation