私はこの配列を持っています。これColorObject gameGrid[][] = new ColorObject[8][8];
は、タイプ ColorObject のスプライト オブジェクトのグリッドです。各オブジェクトは異なる色で円を描きます。
タッチ入力座標とループ内のすべてのオブジェクトの位置を比較して、配列内の選択されたオブジェクトのインデックスとインデックスを取得することで、x
そのうちの 1 つを選択しています。次に、このインデックス値をおよびとして使用します。y
x
y
selectedGridPositionX
selectedGridPositionY
次のようなオブジェクトも取得します。
selectedColorObject = gameGrid[col][row];
最後に、メソッドで私は次のようにそれらを交換しようとしています:
tempColorObject = gameGrid[selectedGridPositionX + 1][selectedGridPositionY];
gameGrid[selectedGridPositionX + 1][selectedGridPositionY] = selectedColorObject;
gameGrid[selectedGridPositionX][selectedGridPositionY] = tempColorObject;
これでほぼ動作します。画面上では入れ替わりますが、それらに触れると、以前のオブジェクトの値が表示されます。私は何が間違っていたのでしょうか?私の質問があまりにも不明確ではないことを願っていますか?