Android-让用户拖动/移动图像

时间:2018-07-10 14:20:51

标签: java android

我环顾了整个网络,发现了如何在我的应用程序中为图像创建运动事件/拖动的一些答案。

到目前为止,我已经实现了以下内容:

private void dragAndDrop(){

    image.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) image
                    .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;

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

}

现在这在一定程度上可行,但是每次单击图像时,图像都会跳到手指下方几厘米以下,我不确定为什么

但是我可以很好地移动图像。 但是我的问题是,这现在是更新的方法吗?我是否错过了一个易于使用的课程,让用户随意移动图像?

谢谢

0 个答案:

没有答案