我的onScroll
和onTouchEvent
被调用,但不是onDown
方法。实际上,当我登录distaceX
,onDown
时,其中有几个退出了,第一个总是相对于我结束最后一次滚动的位置。OnGestureListener onDown方法永远不会被调用
@Override
public boolean onTouchEvent(MotionEvent me){
this.detector.onTouchEvent(me);
return super.onTouchEvent(me);
}
@Override
public boolean onDown(MotionEvent e) {
Log.d("---onDown---",".");
return false;
}
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
Log.d("---onScroll---", "" + distanceX);
return false;
}
任何想法为什么onDown
不会被调用?
编辑:
我改变了我的onTouchEvent
以下块,只有ACTION_MOVE得到记录。
float gestureDistance = 0;
@Override
public boolean onTouchEvent(MotionEvent me){
switch (me.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
Log.d("actionDown", "gestureDistance:" + gestureDistance);
break;
case MotionEvent.ACTION_UP:
Log.d("actionUp", "gestureDistance:" + gestureDistance);
break;
case MotionEvent.ACTION_MOVE:
Log.d("actionMove", "gestureDistance:" + gestureDistance);
break;
default:
Log.d("action default", "default");
break;
}
编辑: 我认为问题是,我的看法是一个web视图。我能否让webview窃取我的活动?
只是试图测试相同的代码。我成功地完成了下一个活动。你用什么设备? – 2012-07-30 22:23:06
尝试'返回true;'代替。看看是否有效。 – 0gravity 2012-07-30 22:26:55
我试过'返回true;'。相同的结果和日志从不发生。 – 2012-07-30 22:28:37