你如何让一个矩形改变它的位置或移动?

how do you make a Rectangle change it's position or move?

我正在使用矩形进行碰撞检测,并且每 3 秒创建一个矩形,我不希望矩形像我的精灵一样向上移动,但是 .translateY() 方法不能用于矩形。

这是我对存储在 ArrayList 上的精灵所做的:

for(Sprite sprite:mySprite){
    sprite.translateY(deltaTime*movementSpeed);
}

这是我在矩形上所做的,但不起作用:

for(Rectangle rect:myRect){
    rect.setY(deltaTime*movementSpeed);
}

有可能你的矩形是在你告诉他们的位置绘制的,但是setY不一样,翻译Y,简单解释:

如果例如 deltaTime = 1 aprox。和 movementeSpeed = 5。 你总是在相同的位置绘制矩形,delta 的变化很小可能只是不受欢迎:

您的职位是rect.setY(5);所有时间。

试试这个

for(Rectangle rect:myRect){
    rect.setY(rect.getY() + (deltaTime*movementSpeed));
}

希望对您有所帮助。