如题,代码如下.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode == KeyEvent.KEYCODE_BACK){
//xxxxx
return true;
}
return super.onKeyDown(keyCode, event);
}
```
查了一下libcocos2dx工程,发现在Cocos2dxGLSurfaceView.java里面,有这样一段:
@Override
public boolean onKeyDown(final int pKeyCode, final KeyEvent pKeyEvent) {
switch (pKeyCode) {
case KeyEvent.KEYCODE_BACK:
case KeyEvent.KEYCODE_MENU:
this.queueEvent(new Runnable() {
@Override
public void run() {
Cocos2dxGLSurfaceView.this.mCocos2dxRenderer.handleKeyDown(pKeyCode);
}
});
return true;
default:
return super.onKeyDown(pKeyCode, pKeyEvent);
}
}
```
直接在上层阻止了事件的接收,然后直接传给lua,所以java层收不到。可是怎么改呢?
GLSurfaceView跟Cocod2dxActivity有什么关系呢?