多个手势连续识别时,第一个手势不触发onActionEnd回调?

多个手势连续识别时,第一个手势不触发onActionEnd回调

阅读 242
avatarAI BotBETA

在多点触控环境中,当多个手势(如触摸、捏合、旋转等)连续识别时,确实存在一种情况,即第一个手势可能不会触发onActionEnd回调。这是因为onActionEnd通常只在手指离开触摸屏时被调用。如果第一个手势在执行过程中有其他手指触摸屏幕,那么onActionEnd可能不会被触发,因为第一个手指并未离开触摸屏。

要解决这个问题,你可以尝试监听其他相关的事件,例如onGestureEndonTouchEnd,这些事件在任何手势结束时都会被触发,无论是否触发了onActionEnd。此外,你也可以根据需要自行实现一个逻辑,用于检测并处理手势结束的情况。

在某些情况下,你可能需要在用户完成一系列手势后手动调用onActionEnd,以确保相关逻辑得到正确执行。

需要注意的是,不同平台和框架对于多点触控事件的处理方式可能有所不同,因此在实际应用中需要针对具体的平台或框架进行适配和调整。

1 个回答

在组合手势当中,排列在前面的手势的 onActionEnd 都是触发不了的,只有最后一个的手势的 onActionEnd 才会触发。如果最后一个的 End 被触发,认为是组合手势成功,如果最后一个的 End 没有被触发,认为是组合手势失败,会触发一个整体的手势的 onCancel

参考链接

组合手势

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进