0

基本的なsurfaceviewシングルスレッドエンジンを使用して、AndroidでGalagaタイプのゲームを作成しようとしています。私の問題は非常に単純です。拡張するGameviewクラスで、キャンバス上で発生するタッチイベントを読み取るonTouchメソッドを定義しました。左ボタン(または右ボタン)が配置されている場所で画面に触れた場合、ボタンが押されている限り、宇宙船は左右に移動することになっています。

しかし、ボタン領域に触れると、私の船の更新メソッドが1回だけ呼び出され、左または右に1回だけ移動し、さらに移動するにはボタンにもう一度触れる必要があります。ボタン部分に触れている間、船を左右に動かし続ける方法はありますか?

前もって感謝します。

4

1 に答える 1

1

移動ロジックとonTouchロジックを混在させないでください。onTouchでは、フラグ「touched」を設定するだけで、通常のゲーム更新ループ中に、touchedがtrueの場合に船を移動できます。次に、onTouchReleasedの「touched」フラグの設定を解除します。

于 2012-05-09T23:09:54.303 に答える