@Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
   // TODO Auto-generated method stub
   switch (keyCode) {
     case KeyEvent.KEYCODE_VOLUME_UP:
       mGameView.y -= 3;
       break;
     case KeyEvent.KEYCODE_VOLUME_DOWN:
       mGameView.y += 3;
       break;
     case KeyEvent.KEYCODE_DPAD_DOWN:
       mGameView.y += 3;
       break;
     case KeyEvent.KEYCODE_DPAD_UP:
       mGameView.y -= 3;
       break;
     case KeyEvent.KEYCODE_DPAD_LEFT:
       mGameView.x -= 3;
       break;
     case KeyEvent.KEYCODE_DPAD_RIGHT:
       mGameView.x += 3;
       break;
   }
   return false;
 }
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    mGameView = new GameControlRobotView(this);

    mGameView.setOnGameKeyDown(
        new OnGameKeyDownListner() {

          @Override
          public void onKeyDown(Object keyObject) {
            // TODO Auto-generated method stub
            Toast.makeText(HelloGameItemControlActivity.this, keyObject.toString(), 3000).show();
          }
        });

    getWindow()
        .getDecorView()
        .setOnClickListener(
            new OnClickListener() {

              @Override
              public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Log.i(CommonConstants.LOGCAT_TAG_NAME, "Window onClick");
              }
            });

    getWindow()
        .getDecorView()
        .setOnTouchListener(
            new OnTouchListener() {

              @Override
              public boolean onTouch(View arg0, MotionEvent arg1) {
                // TODO Auto-generated method stub
                Log.i(CommonConstants.LOGCAT_TAG_NAME, "Window onTouch");
                return false;
              }
            });

    setContentView(mGameView);

    new Thread(new GameThread()).start();
  }