0
所以我想创建一个雪人,并动画它的左右手臂,我已经看了Oracle文档,并试图尽可能地写我的时间以尽可能如何设置它。问题与时间轴动画
以供参考,这是代码示例中,我一直在寻找:
final Rectangle rectBasicTimeline = new Rectangle(100, 50, 100, 50);
rectBasicTimeline.setFill(Color.RED);
...
final Timeline timeline = new Timeline();
timeline.setCycleCount(Timeline.INDEFINITE);
timeline.setAutoReverse(true);
final KeyValue kv = new KeyValue(rectBasicTimeline.xProperty(), 300);
final KeyFrame kf = new KeyFrame(Duration.millis(500), kv);
timeline.getKeyFrames().add(kf);
timeline.play();
现在,这里是我创建的左臂代码,(如果它的工作),其动画。我的缺陷在哪里,我该如何解决它?
private void drawLeftArm(GraphicsContext gc)
{
leftArm = new Ellipse();
leftArm.setCenterX(90.0);
leftArm.setCenterY(160.0);
leftArm.setRadiusX(100.0);
leftArm.setRadiusY(30.0);
gc.setFill(Color.AQUAMARINE);
gc.fillOval(leftArm.getCenterX(), leftArm.getCenterY(), leftArm.getRadiusX(), leftArm.getRadiusY());
timeLine = new Timeline();
timeLine.setCycleCount(Timeline.INDEFINITE);
timeLine.setAutoReverse(true);
KeyValue LeftValue = new KeyValue(leftArm.centerYProperty(), 100);
KeyFrame keyFrame = new KeyFrame(Duration.millis(1000), LeftValue);
timeLine.getKeyFrames().addAll(keyFrame);
timeLine.play();
}
我明白了,非常感谢您的建议=) – SomeStudent 2015-04-05 07:12:24