动画如何在java中正常工作?

时间:2016-05-13 03:46:57

标签: java animation

我不确定人们如何在java中创建动画,例如在屏幕上翻译正方形。当我尝试使用for循环更改矩形的位置时,所有内容都会立即执行,最后我会得到矩形的结束坐标。所以我想知道的是人们如何超时地实现这些平滑动画,如果我想出于任何原因创建自定义动画类,我将如何添加延迟以使其在java中显示为动画而不是即时位置变化? / p>

2 个答案:

答案 0 :(得分:0)

您可以简单地存储矩形的x和y位置。然后运行一个while循环,检查是否已经过了一段时间。如果有,则增加位置变量。

代码(需要进行微调以满足您的需求):

int tick = 500; //set this to whatever you want
long lastTime = System.currentTimeInMillis();
while(true) {
 long currTime = System.currentTimeInMillis();
 if (currTime > lastTime + tick) {
  lastTime = currTime;
  x = x + 1; //replace this with your object's position
 }
}

答案 1 :(得分:-1)

您可以使用Thread.sleep(long millis)方法添加延迟,该方法将暂停当前线程的执行指定的毫秒数。然而,可能有更好的方法。