class GraphGestureListener extends GestureDetector.SimpleOnGestureListener
{
private static final String DEBUG_TAG = "Gestures";
@Override
public boolean onDown(MotionEvent event)
{
Log.d(DEBUG_TAG, "onDown: " + event.toString());
return true;
}
@Override
public boolean onFling(MotionEvent event1, MotionEvent event2,
float velocityX, float velocityY)
{
Log.d(DEBUG_TAG,
"onFling: " + event1.toString() + event2.toString());
return true;
}
}
我不确定我是否在这里忽略了这一点,但是当我在设备上执行所述手势时,我从未设法在LogCat中显示onFling消息。我一直在上车。是因为onDown每次拦截它吗?
答案 0 :(得分:0)
我已经修好了。
我在前面的例子中看到了onTouchEvent:
@Override
public boolean onTouchEvent(MotionEvent event)
{
this._detector.onTouchEvent(event);
return super.onTouchEvent(event);
}
通过返回探测器的onTouchEvent结果,我现在成功捕获了所有事件:
@Override
public boolean onTouchEvent(MotionEvent event)
{
return this._detector.onTouchEvent(event);
}
我是android的新手,这只是一时兴起。有没有人对第一个样本阻止其他事件的原因有合理的解释?