Как реализовать событие OnTouch

Я недавно изучил OpenGL, и я разрабатываю игру с использованием OpenGL. Я не знаю, как реализовать событие OnTouch в изображении и перемещать изображение. Я использую OpenGL Documentation Example OpenGLES 0.1, но ничего не сделал

По умолчанию вы можете обрабатывать касание в действии, используя следующий код,

@Override public boolean onTouch(View v, MotionEvent event) { final float mouseSensitivity = 0.5f; if(event.getAction()==MotionEvent.ACTION_DOWN){ startX = event.getX(); startY = event.getY(); } else if(event.getAction()==MotionEvent.ACTION_UP){ startX = 0.0f; startY = 0.0f; } else if(event.getAction()==MotionEvent.ACTION_MOVE){ graphicsRenderer.rotate((startY - event.getY()) * mouseSensitivity,(startX - event.getX()) * mouseSensitivity); startX = event.getX(); startY = event.getY(); } return true; } // Where startX and startY are global int variables; 

Чтобы справиться с просмотром GLSurface, сделайте так,

 class ClearGLSurfaceView extends GLSurfaceView { public ClearGLSurfaceView(Context context) { super(context); mRenderer = new ClearRenderer(); setRenderer(mRenderer); } public boolean onTouchEvent(final MotionEvent event) { queueEvent(new Runnable(){ public void run() { mRenderer.setColor(event.getX() / getWidth(), event.getY() / getHeight(), 1.0f); }}); return true; } ClearRenderer mRenderer; } 

Прежде всего, вы реализуете метод override onTouchMethod, а затем видите для каждого действия каждое действие, например, вниз, вверх и двигаться относительно касания.

  @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction()==MotionEvent.ACTION_DOWN){ Log.i(TAG,"Action Down"); } else if(event.getAction()==MotionEvent.ACTION_UP){ Log.i(TAG,"Action Up"); } else if(event.getAction()==MotionEvent.ACTION_MOVE){ Log.i(TAG,"Action Move"); } return true; } 

См. Ниже код –

 @Override public boolean onTouchEvent(MotionEvent event) { mX = (int) event.getX(); mY = (int) event.getY(); return super.onTouchEvent(event); } 

И следуйте этому руководству. Это может вам помочь.

Эта ссылка очень полезна для понимания концепции TouchEvent в OpenGL

Обнаружение касаний пользователя по квадрату OpenGL