我正在尝试使用 Opengl es 2 制作一个简单的 2D 游戏。我正在使用 GLSurfaceView。我正在尝试检测视图上的投掷手势,但它没有检测到任何东西。为什么是这样?以下是代码:-
试图在 glsurfaceview 内外声明手势检测器。
@SuppressWarnings("deprecation")
final GestureDetector gestureDetector = new GestureDetector(new GestureDetector.SimpleOnGestureListener() {
public void onLongPress(MotionEvent e) {
Log.d("", "Longpress detected");
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX, float velocityY) {
Log.d("", "OnFling detected");
return super.onFling(e1, e2, velocityX, velocityY);
}
});
在 GLSurfaceView 内部
@Override
public boolean onTouchEvent(MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
当我在表面上投掷时,它会检测到长按并打印长按而不是投掷的调试消息。无论我在屏幕上做什么,它只会检测到长按.. 有什么问题?