はじめまして。androidアプリについての質問です。
サイトに書き込みするのは初めてですので、分かり難い点や至らない点などはご容赦下さい。
[やりたいこと]
画像をタッチした場所に別の画像を重ねて表示したい。
[質問]
FrameLayout上に画像1を表示し、touchイベントで画像2を表示することができました。
しかし、タッチした場所に表示することができません。
タッチした位置情報はMotionEventで取得できているのですが、取得した位置に表示する
ところがうまくいきません。
どなたか分かる方がいらっしゃったらご教授下さい。
画像2の位置を設定しているソースは以下のように記述しています。
int x = (int)event.getRawX();
int y = (int)event.getRawY();
int left = iv2.getLeft() + (x - oldx);
int top = iv2.getTop() + (y - oldy);
imageview2.layout(left, top, left + iv2.getWidth(), top + iv2.getHeight());
以下のようにしてみてください。
int x = (int)event.getRawX();
int y = (int)event.getRawY();
int diffX = oldx - x;
int diffY = oldy - y;
currentX -= diffX;
currentY -= diffY;
view.layout(currentX, currentY, currentX + view.getWidth(), currentY + view.getHeight());