我知道对于 Android 视图,如果我返回true
,onTouchEvent
则表示您希望继续接收当前手势的事件。如果您返回false
,则不应为当前手势处理更多事件
但是我想尝试检测手势是单击还是按住/拖动事件,所以我返回true
到初始ACTION_DOWN
事件,直到经过了几毫秒,此时我超时并将手势识别为按住/拖动而不是单击。
一旦超时过去,我想false
进一步返回 onTouchEvents,这样我就可以停止接收事件并让父视图管理其余的拖动。
但是,我似乎注意到,一旦您返回true
第一个事件,它就会收到所有带有相关手势的进一步事件,即使在我不断返回false
以后的事件之后也是如此。似乎返回值只对第一个事件很重要,之后它被忽略了。
onTouchEvent
一旦您接受了手势中的第一个事件,有什么方法可以停止接收并因此将其传递给父级?