HarmonyOS 监听滑动事件左滑,右滑,上滑,下滑,以及返回值的意义

Posted 安果移不动

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HarmonyOS 监听滑动事件左滑,右滑,上滑,下滑,以及返回值的意义相关的知识,希望对你有一定的参考价值。

     btn2.setTouchEventListener(new Component.TouchEventListener() 
            @Override
            public boolean onTouchEvent(Component component, TouchEvent touchEvent) 
                //参数1 代表手指的索引 单手指传递0就好了
                MmiPoint pointerPosition = touchEvent.getPointerPosition(0);
                float x = pointerPosition.getX();
                float y = pointerPosition.getY();
                int action = touchEvent.getAction();
                switch (action) 
                    //按下
                    case TouchEvent.PRIMARY_POINT_DOWN:
                        startX = x;
                        startY = y;
                        btn2.setText("按下(" + x + "," + y + ")");
                        break;
                    //弹起
                    case TouchEvent.PRIMARY_POINT_UP:
//                        btn2.setText("弹起(" + x + "," + y + ")");
                        break;
                    //滑动
                    case TouchEvent.POINT_MOVE:
//                        btn2.setText("滑动"+count);
                        endX = x;
                        endY = y;
                        //右滑动 控制左边滑动浮动不超过100
                        if (endX > startX && Math.abs(endX - endY) < 100) 

                            btn2.setText("右滑(" + x + "," + y + ")");
                         else if (endX < startX && Math.abs(endX - endY) < 100) 
                            btn2.setText("左滑(" + x + "," + y + ")");
                         else if (endY > startY && Math.abs(endX - startX) < 100) 
                            btn2.setText("下滑(" + x + "," + y + ")");
                         else if (endY < startY && Math.abs(endX - startX) < 100) 
                            btn2.setText("上滑(" + x + "," + y + ")");
                        
                        break;

                
                // 返回为true 所有动作都会执行并返回代码
                // 返回false 表示只有一个动作会触发当前方法并执行对应代码
                return true;
            
        );

滑动黑色区域 会改变

写了一个100 是为了防止滑动的时候分明是左滑但是会判定为右边滑动这样的情况。可以根据自己的实际需求去改写

// 返回为true 所有动作都会执行并返回代码
// 返回false 表示只有一个动作会触发当前方法并执行对应代码
return true;

 

以上是关于HarmonyOS 监听滑动事件左滑,右滑,上滑,下滑,以及返回值的意义的主要内容,如果未能解决你的问题,请参考以下文章

小程序 手机左滑右滑事件监听

插件-模仿滑动动作事件

Appium_swipe模拟上下左右滑动操作

手机百度右滑返回怎么关闭?

移动端:移动端事件

vue中使用触摸事件,上滑,下滑,等