繁体   English   中英

MotionEvent中的ACTION_CANCEL和ACTION_UP有什么区别?

[英]What's the difference between ACTION_CANCEL and ACTION_UP in MotionEvent?

我想跟踪屏幕上的手指触摸。 所以我所做的就是开始录制时的位置MotionEvent触发ACTION_DOWN ,但我怎么知道什么时候该动作完成,在ACTION_CANCEL ,或ACTION_UP

它们之间的确切区别是什么?

MotionEvent:

  • ACTION_UP:按下的手势已完成,该动作包含最终的释放位置以及自上次下移或移动事件以来的任何中间点。

  • ACTION_CANCEL:当前手势已中止。

ACTION_CANCEL在父级控制动作时发生,例如,当用户在列表视图中拖动足够多以使其开始滚动而不是让您按下其内部的按钮时,就会发生。 您可以在视图组文档中找到有关它的更多信息: onInterceptTouchEvent

因此,当操作从父级中拖出时,请使用ACTION_CANCEL;否则,请使用ACTION_UP。

通常,当访客完成时,用户触发ACTION_UP以明确指示用户完成了与移动的交互。

另一方面,系统调用ACTION_CANCEL以显示父视图接管其子视图之一的控制。

请看一下图表

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM