1

我需要检测滑动方向。在我的代码中,我可以检测到方向,但它就像是,如果我像这样向右上方或左上方滑动。左边也一样,我的要求是如果我向左滑动它应该只向左移动,就像所有方向一样。谁能帮我吗。提前致谢!

这是我的代码

@Override
    public boolean onScroll(MotionEvent event1, MotionEvent event2, float distanceX, float distanceY) {
    if (Math.abs(deltaX) > Math.abs(deltaY)) {
                if (Math.abs(deltaX) > MIN_DISTANCE) {
                    if (deltaX > leftSidelastX) {
                        leftSidelastX = deltaX;

                        Log.d("", "Right to Left swipe performed");

                    } else {
                        leftSidelastX = deltaX;
                        Log.d("", "Left to Right swipe performed");
                    }
                }

            } else {
                if (Math.abs(deltaY) > MIN_DISTANCE) {

                    if (deltaY > leftSidelastY) {
                        leftSidelastY = deltaY;
                        Log.d("", "Up to Down swipe performed");


                    } else {

                        leftSidelastY = deltaY;

                        Log.d("", "Down to Up swipe performed");


                    }
                }
            }
return true;
}
4

2 回答 2

0

当用户将一根或多根手指放在触摸屏上时,就会发生“触摸手势”,并且您的应用程序将该触摸模式解释为特定手势。

有关更多信息,请参阅以下链接:-

1. https://developer.android.com/reference/android/view/GestureDetector.OnGestureListener.html

2. http://en.proft.me/2017/06/25/detecting-gestures-android-gesturedetector/

于 2018-02-06T13:16:59.070 回答
0

有很多手势库和方法下面是我认为会使用完整的一种

https://android-arsenal.com/details/1/3323

滑动手势和其他有用手势列表如下

https://android-arsenal.com/tag/147

于 2018-02-06T12:56:43.127 回答