如何将图像拖到另一个图像背景上

时间:2014-09-03 07:03:33

标签: android

当iam拖动image1时,它隐藏在image2的背景下,我需要在拖动后将image1设置在image2上。

这是代码:                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;
        }
    });

这是.xml文件

<FrameLayout 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" />
</FrameLayout>

1 个答案:

答案 0 :(得分:1)

我得到了答案:

使用了这个

             image1.bringToFront();

将图像设置在另一个图像视图的前面。