1

我创建了一个 18 帧长的精灵,它应该是静止的并通过帧运行并循环动画,但是当它运行时它在屏幕上缓慢移动,直到它到达最后一帧然后猛拉回到它应该停留的原始位置。

我不知道它这样做的原因,并试图让它变得更小和更大的尺寸,在某些尺寸下它不会移动,但只是像它应该做的那样动画。如果有人对为什么会发生这种情况以及如何阻止它移动并保持在应有的位置有一个答案,将不胜感激。

我只为精灵使用了 1 行,我使用 gimp 创建了精灵并将其保存为 png。

4

1 回答 1

0

代码相当长,所以我没有添加它,但它基于本教程 水族馆动态壁纸教程

我想我找到了答案,我将 png sprite 放在我创建的名为 drawable 的文件夹中,我将所有图像放在那里,我再次尝试,但这次将 sprite 放在其他文件夹中并且它没有移动,我尝试缩放精灵也让它有点不稳定,我希望使用缩放来代替所有屏幕的大小,这适用于普通图像但对于精灵它会导致一些问题,也许我会尝试drawable-large-mdpi 文件夹中的最大尺寸,看看它是否会导致任何问题。我会用这种方法更新并让你知道。最好只有一张图像并根据屏幕尺寸对其进行缩放。

好的,我终于找到了答案,它可能会帮助那些创建精灵的人,划分为数量帧时的宽度必须是一个整数,因为测量值是 int 而不是浮点数或双精度数,所以它移动是因为当帧被分割时它来了到一个分数,而不是导致它移动(我猜)无论浮动额外测量是什么。示例:如果精灵是 100 像素高和 1082 像素宽,并且我有 15 帧,那么每帧的宽度将是 72.133333333 像素宽,这会导致错误将图像移动额外的长度,同时保持动画看起来不错。现在,如果它是 1080 像素宽,那么每帧将是 72 像素宽,这是一个不错的整数,然后会完美地制作动画。

于 2011-09-30T15:31:00.823 回答