2

少し質問があります。:)私の新しいライブ壁紙では、キャンバスを水平方向に反転しています。

c.scale(-1f, 1f, screenWidth* 0.5f, screenHeight* 0.5f);
drawFlipped();
c.scale(-1f, 1f, screenWidth* 0.5f, screenHeight* 0.5f);

これはすべてうまく機能しますが、ユーザーがRectとして定義された別の移動オブジェクトをクリックできるontouchイベントも発生します。

ただし、反転したキャンバスにrectを描画すると、x、y座標が正しくありません。それはまだ鏡の中にあり、スプライトを描いた後にキャンバスを裏返すので、私はそれを理解しています。

私の質問は、画面の右側からオンタッチイベントを計算するにはどうすればよいですか?私は試しました:Screenwidth --object.x --object.widthしかし、それはあまり役に立ちませんでした:(

4

1 に答える 1

0

これは私のために働く:

int screenWidth = getScreenWidth();
Rect newCoordinates = new Rect(object.getRect()); //copies old coordinates
newCoordinates.right = screenWidth - object.getRect().left; //switch right and left since the Rect is being mirrored
newCoordinates.left = screenWidth - object.getRect().right;
object.setRect(newCoordinates);
于 2013-01-15T11:45:07.543 に答える