そのため、画面上でキャラクターを1スペース移動するAnimationDrawableがあります。アニメーションは問題なく動作しますが、GUI の残りの部分が画面を更新しないようにする必要があります。基本的に、マップが移動すると、ゲームは画面を更新して新しい場所を更新する必要があります。再描画のコードはゲーム クラス内にあり、アニメーションは実際のゲーム ボードを表示するグリッドビューのイメージ アダプターにあります。これが問題の 2 行のコードです。
playerAdapter.animateLeft();
redraw();
最初の行は、発生する必要がある 2 つのアニメーションを持つアダプターを呼び出します。どちらも 700 ミリ秒かかります。次に、再描画はボード自体を更新します。問題は、再描画がアニメーションを待たないことです。私はスリープなどを使用してみましたが、それはすべてのことを一時停止するだけで、何も起こりません。スレッドまたはハンドラーを使用する必要があると思いますが、それがどのように機能するかわかりません。何か案は?すべてのヘルプは大歓迎です:)