根据Android开发人员的说法:
onLongPress
在初始键为开的情况下长按发生时通知
触发它的MotionEvent。
onShowPress
用户执行了DownMotionEvent,但未执行移动或
还没有。此事件通常用于向用户提供视觉反馈
用户让他们知道他们的行为已被认可,即
突出显示一个元素。
我同时尝试了两个按钮,并使用Toast
表示showPress
和longPress
发生了。但是,我看不出任何区别。onLongPress
和onShowPress
有什么区别?当我们为这些override
GestureDetector
MotionEvents
时,有哪些示例?
最佳答案
当触摸事件(按下屏幕)的时间等于onLongPress
(可以在here中看到)时,将触发getLongPressTimeout
。触发时,这表明按下已变成长按。
另一方面,onShowPress
表示触摸事件确实是轻击(不是滚动)。要知道何时触摸事件是轻击,将有一个时间间隔记录来自触摸事件的运动。时间间隔由getTapTimeout
返回(读取为here)。
两者都与触摸事件有关,但是具有不同的触发时间(和不同的用途)。阅读问题中的注释(here)提供的链接将有助于您理解两者。