【问题标题】:Difference between onLongPress and onShowPressonLongPress 和 onShowPress 的区别
【发布时间】:2019-12-01 08:07:13
【问题描述】:

根据 Android 开发者的说法:

onLongPress在初始打开时长按时通知 按下触发它的 MotionEvent。

onShowPress 用户执行了向下 MotionEvent 并且未执行移动或 起来了。此事件通常用于向 用户让他们知道他们的行为已被识别,即 突出显示一个元素。

我尝试了两个按钮并使用Toast 表示showPresslongPress 发生了。但是,我看不出有什么不同。

onLongPressonShowPress 有什么区别?当我们override GestureDetector 为那些MotionEvents 时有哪些例子?

【问题讨论】:

标签: android motionevent gesturedetector


【解决方案1】:

onLongPress 将在触摸事件(按下屏幕)的时间量等于getLongPressTimeout 时触发(可以看到here)。当它触发时,这表明按下已变为长按。

另一方面,onShowPress 表示触摸事件确实是点击(不是滚动)。要知道触摸事件何时是轻击,有一个时间间隔,在该时间间隔中将记录来自触摸事件的移动。时间间隔由getTapTimeout(读取here)返回。

两者都与触摸事件有关,但触发时间不同(目的也不同)。阅读问题中的评论提供的链接 (here) 将帮助您理解两者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-07
    • 2011-10-20
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-09
    • 2010-12-21
    相关资源
    最近更新 更多