关于触屏的判定



  • 我试了试多类型点击判定,但没有效果,然后我试了官方实例里面一样的正在触摸对象时来判定,确实有效果了,但是只能判定为点击,那么像双击长按等功能该怎么实现呢,望大佬求解



  • @用户177416196 多类型点击应该是可以用的,但是偶尔会跟鼠标冲突(也就是用鼠标无法正常触发),那个的检测更接近一般的软件和系统,也就是需要触摸有一定时间才会触发,并且短时间连续按不会重复识别。
    所以一般情况下用多类型就是可以的,如果需要换的话,也有办法实现。
    例如,使用“正在触摸对象”的条件实现单击、双击、长按识别:
    - 正在触摸对象时,仅触发一次:
    若定时器没有运行:开启一个定时器,类型为一次性,时间为0.5-1秒左右(根据条件优化)
    否则:停止定时器,执行动作 ——双击
    - 定时器到达时间时:执行动作 ——单击
    - 正在触摸对象时,仅触发一次:
    若定时器没有运行:开启一个定时器,时间1-2秒左右;
    否则,停止定时器。
    当定时器到达时间时,正在触摸对象时:执行动作 ——长按

    因为在路上,完全靠脑子想的,没有实际验证,但是应该能作为一些参考(

    补充一点内容,如果“开始触屏”、“停止触屏”的条件正常的话,则应该加进去作为优化,否则从屏幕其他地方开始按住手指然后滑动到对象上时也会正常触发单击双击事件,因此需要检测触屏开始时是否已经在触摸对象(即点击的是否是目标对象)。我这个事件里还有很多可以优化的地方,晚点如果需要的话我可以写一个示例事件😁


登录后回复