1

这个任务看起来相当简单,但我不知道在 Android 中实现它的最佳方法是什么。

它应该是什么样子

屏幕上应该有许多图像(假设最多 4-5 个)每个图像将具有作为背景的 FrameAnimation,它是 oneTime(false)(代表一个跑步者)。这些图像中的每一个都需要在屏幕周围有一条随机路径,这是在首次创建时计算的。所以跑步的人会绕着屏幕朝不同的方向走。每个图像都有一个 onClick 侦听器,因此当单击它时,它将从屏幕上删除。

从 1.6 开始,在不导致性能下降或位图内存泄漏的情况下,在 Android 中执行此操作的最佳方法是什么?

我附上一张图片作为示例。谢谢大家的时间。

在此处输入图像描述

稍后编辑:最好的解决方案似乎是使用扩展的 SurfaceView。我看到了一些添加、移动图像的示例,但我还不知道如何拦截 onTouchEvent。我可以覆盖surfaceView的onTouchEvent。现在我想到的解决方案是获取触摸点的 x 和 y,然后查看动画图像(如果有)在 x,y 按下的点下方。这似乎相当复杂。

4

1 回答 1

1

每个正在运行的精灵都会有它的矩形坐标;左上角和右下角。您需要做的就是遍历您的精灵并查看用户是否触摸了 x 和 y 在精灵矩形内的点。

但是,您还必须同步一些代码块...

于 2011-02-23T14:47:43.327 回答