我想跟踪屏幕上的手指触摸。所以我做的是在MotionEvent
触发ACTION_DOWN
时开始记录位置,但我怎么知道动作何时结束,ACTION_CANCEL
或ACTION_UP
?
它们之间的确切区别是什么?
答案 0 :(得分:19)
ACTION_UP:按下的手势已完成,动作包含最终发布位置以及自上次下移或移动事件以来的任何中间点。
ACTION_CANCEL:当前手势已中止。
当父级拥有动作时,会发生ACTION_CANCEL,例如,当用户在列表视图中拖动足够的内容时,它将开始滚动而不是让您按下其中的按钮。您可以在viewgroup文档中找到有关它的更多信息:onInterceptTouchEvent。
所以当动作被拖出父动作时使用ACTION_CANCEL,否则使用ACTION_UP。
答案 1 :(得分:0)