Android : How to set dragged image over another image

on Tuesday, September 2, 2014


I have two images image1 & image2 in same layout now i want to drag image1 using on touch listener and want to put over another image2...but when iam dragging the image1 ,image2 also moving and squeezing.


this my code of touch listener:



image1.setOnTouchListener(new View.OnTouchListener() {

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@SuppressLint("NewApi")
@Override
public boolean onTouch(View v, MotionEvent event) {
layoutParams = (LayoutParams) image1.getLayoutParams();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
break;
case MotionEvent.ACTION_MOVE:
int x_cord = (int) event.getRawX();
int y_cord = (int) event.getRawY();

if (x_cord > windowwidth) {
x_cord = windowwidth;
}
if (y_cord > windowheight) {
y_cord = windowheight;
}

layoutParams.leftMargin = x_cord - 25;
layoutParams.topMargin = y_cord - 75;

image1.setLayoutParams(layoutParams);
break;
default:
break;
}
return true;
}
});


Here's my .xml



<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="300dp"
android:background="#888"
android:orientation="vertical"
>

<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />

<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_gravity="center"
android:src="@drawable/image" />
</LinearLayout>

0 comments:

Post a Comment