2012-04-10 45 views
0

我有OnGestureListener的onScroll事件的问题。Android OnGestureListener onScroll MotionEvent

方法签名如下:

public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY); 

的问题是MotionEvent E1似乎总是第一个滚动后的相同。 当我在例子中对第一次循环执行e1.getX()时,它返回100.当我停止滚动并在屏幕的不同位置开始第二次滚动时,它也会给出100.只有MotionEvent e2更改它的值。

回答

2

e1将始终是触摸事件(ACTION_DOWN事件)的初始动作事件。 e2是当前的动作事件。

+0

好吧,但是当我做第二次滚动,我的意思是,当我停止通过从屏幕释放手指滚动,然后开始第二次滚动e1仍然是一样的......不应该e1始终是最初滚动时触摸,而不是第一次触摸? – 2012-04-10 21:55:55

+0

你可以验证散列码在两个单独的卷轴之间是相同的还是不同的。 – 2012-04-10 21:59:43

+0

,因为它似乎,我在缓冲touchevents时在我的框架中有一个错误...当我使用本机OnTouchListener它的工作原理... – 2012-04-10 22:08:48