0

我正在尝试使用基本的surfaceview单线程引擎在android中制作Galaga类型的游戏。我的问题很简单,在扩展的 Gameview 类中,我定义了 onTouch 方法,该方法读取画布上发生的任何触摸事件。如果在左键(或右键)放置的位置触摸屏幕,只要按下按钮,星舰就应该向左/向右移动。

但是当按钮区域被触摸时,我的船的更新方法只被调用一次,它只向左或向右移动一次,并且必须再次触摸按钮才能移动得更远。只要触摸按钮区域,有没有办法让船连续左/右移动?

提前致谢。

4

1 回答 1

1

不要将移动逻辑与 onTouch 逻辑混用。在 onTouch 中,您可以设置一个标志“已触摸”,然后在常规游戏更新循环期间,如果触摸为真,您可以移动船。然后取消设置 onTouchReleased 中的 'touched' 标志。

于 2012-05-09T23:09:54.303 回答