2017-02-27 30 views
0

我之前问过类似的问题,但答案不是很有帮助,我找不到任何解决方案。如何独立处理ACTION_DOWN和ACTION_MOVE

我想知道一种方法来检测ACTION_DOWN当我们只触摸某个视图,并检测ACTION_MOVE时,我们只在屏幕上移动我们的手指,因为我所得到的是ACTION_DOWN和ACTION_MOVE同时被调用,当我将我的手指放在视图上。

任何人都可以请发表一个简单的代码如何做到这一点。

+0

正如您在类似问题中提到的那样,您需要设置一个阈值大小,低于该大小时忽略移动。 – meatspace

+1

@meatspace以及如何做到这一点,我无法弄清楚它? – hasan

回答

0

这是原始的运动事件。您可能可以使用GestureDetector并检测点击和滑动。

问题是ACTION_MOVE将在检测到任何移动时被调用,例如在触摸屏上施加更多压力可能会将触摸点移动几个像素左右。

+0

我可以做一个if语句,在手指压力的这个不确定性的某个阈值下,这会导致移动被触发。如果是,那我该如何做到这一点。 – hasan

+0

这不仅仅是压力,用户可能会移动手指几毫米(即使他正在执行触摸/点击)。当用户'ACTION_MOVE'时,你可以做的是从MotionEvent得到'getX'和'getY',跟踪X和Y从ACTION_DOWN的增量。然后你可以定义一些门槛,你会说:好吧,这不是触摸,这个用户正在移动他的手指。 – Gudin

+0

我明白你说的可以向我展示一个示例代码,因为我在触摸事件中遇到了一些问题。 – hasan

相关问题