ScaleGestureDetector用单指触摸触发onScaleEvent

时间:2012-06-30 00:16:32

标签: android

我有一些代码,onTouchEvent将触摸事件传递给成员ScaleGestureDetector,如果缩放GD在我的缩放侦听器上触发onScaleEvent,我会缩放显示项目。如果未触发onScale事件,则将此事件视为潜在拖动并移动显示的项目。我观察到,在某些设备上,ScaleGestureDetector会为我触发onScale事件,即使只有一根手指触摸屏幕。这是预期的吗?建议同时处理尺度和拖动的机制是什么?

1 个答案:

答案 0 :(得分:0)

如果我纠正你用单指针(mEvent.getPointersCount()== 1)触发mScaleGestureDetector.onTouchEvent(mEvent)。它应该用大于1的指针触发。确保你用pointersCount>触发。 1例如。

if(pointersCount >1) {
     TOUCH_GESTURE_MODE = GESTURE_MODE_SCALE;
     mScaleGestureDetector.onTouchEvent(mEvent);
     return true;
}