2010-11-10 126 views
0

我正在开发一个Android应用程序。我很新。当用户触摸屏幕时,改变我使用OpenGl绘图

我有以下类别:

class CustomGLSurfaceView extends GLSurfaceView 

class CustomRenderer implements GLSurfaceView.Renderer 

CustomGLSurfaceView使用CustomRenderer上呈现方法的立方体。

我已经添加上CustomGLSurfaceViewonTouchEvent(MotionEvent event)管理触摸事件:

class CustomGLSurfaceView extends GLSurfaceView { 

    // For touch inputs - previous touch (x, y) 
    private float previousX; 
    private float previousY; 

    private CustomRenderer myRenderer; 

    public CustomGLSurfaceView(Context context) { 
     super(context); 
     myRenderer = new CustomRenderer(); 
     setRenderer(myRenderer); 
    } 

    @Override 
    public boolean onTouchEvent(MotionEvent event) { 
     float currentX = event.getX(); 
      float currentY = event.getY(); 
      switch (event.getAction()) { 
      case MotionEvent.ACTION_MOVE: 
       myRenderer.handleMovement(currentY, currentY, previousX, previousY); 
      } 
      // Save current x, y 
      previousX = currentX; 
      previousY = currentY; 
      return true; // Event handled 
    } 
} 

我可能不得不修改得出一些新的或旋转立方体?我必须在handleMovement上做到这一点。

谢谢。

回答

0

检查SDK的samples目录中的APIDemo项目。例如,特别是TouchRotateActivity.java文件。由于您提到您是Android新手,因此我建议您通过APIDemo应用查看示例代码中可能提供/可用的内容。

相关问题