2017-02-24 122 views
0

我有一个触摸设置的视图,它有三个MotionEvents(向下,向上移动)。ACTION_MOVE干扰ACTION_DOWN

我在(向下移动)返回true,向上返回false。

我知道当我们触摸视图时会触发动作,动作动作是当我们在屏幕上移动手指时,动作是当我们与屏幕失去联系时。

问题是:当我只触摸视图而没有在屏幕上移动手指时,会触发Action down和Move。

回答

0

您正在移动它。如果你的手指移动了1个像素,它就算作一个动作。当按下按钮时,至少一个像素点不会移动手指,即使您可能会受到传感器不准确的影响,也几乎不可能实现。为了解决这个问题,你需要忽略小于阈值大小的任何移动。

+0

是的我完全理解你说的话和它的真实性,但是你能给我举个例子吗? – hasan

+0

如何为移动设置阈值限制? – hasan

+1

存储发生故障的位置。在一个动作中,检查新的x/y和原来的区别。如果两者都不够大(足够大可以玩,可以从10个像素左右开始)忽略该事件。 –