我正在研究一种在某种程度上类似于俄罗斯方块的游戏(想象一下有时会移动的二维彩色方块阵列)
我正在尝试为各个方块设置动画,以便它们可以平滑地从坐标向下滑动到下一个。由于我想使用Android的内置补间功能,因此动画必须应用于整个视图(而不是部分视图)。这对我来说效果不好,因为我只想让一些彩色方块向下滑动,其余部分保持静止。
我提出解决这个问题的(理论)解决方案是制作2个视图,直接在彼此之上分层。顶视图用于在需要移动时为方块设置动画,而底层用于静态方块。动画层是透明的,直到我准备动画一些东西。然后,我只需打开动画层中的彩色方块,将其补间到新位置,完成后将其关闭。在同一时间范围内,静态层只是在正确的时间打开和关闭正方形,使整个事物看起来与最终用户无缝。
建议的解决方案只是一种理论,因为我还没能使其正常工作。由于我遇到了麻烦,我想知道这是否是解决问题的最佳方法?也许有一个更优雅的解决方案,我在看?有人知道更好的方法吗?
答案 0 :(得分:0)
如果您只想为单个元素设置动画,请查看命名空间android.view.animation.Animation。您还可以使用Drawable形状并直接绘制它们。最后,如果你想要一个模拟,那么你将不得不研究线程。基本上,您将创建一个计时器,根据间隔为您更新画布。您还可以使用其他一些视图画布,例如GLView画布。