cocos2dx游戏里面我们经常会用到按手机返回键的问题,比如我们要退出一个程序时,如果只按一下就会提示:再按一次退出程序,下面简单的说说是怎么做的:
首先我们把项目导入eclipse,然后在项目的src下面的org.cocos2dx.lib里面找到Cocos2dxGLSurfaceView.java,然后找到onKeyDown函数在case KeyEvent.KEYCODE_BACK:下面加一句:return false;这就是点击返回按钮后的响应。
然后在src下面import android.view.KeyEvent;
import android.widget.Toast;的com.cocos2dx.org下面的java文件,也就是自己新建工程后生成的java文件,文件里面重写onKeyDown函数,重写之前我们需要导入需要的包:
import android.view.KeyEvent;
import android.widget.Toast;
然后我们在Cocos2dxActivity里面增加函数:
private long mExitTime;//这个是一个新的变量,要加在Cocos2dxActivity函数里面
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK) {
if ((System.currentTimeMillis() - mExitTime) > 2000) {// 如果两次按键时间间隔大于2000毫秒,则不退出
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
mExitTime = System.currentTimeMillis();// 更新mExitTime
} else {
System.exit(0);// 否则退出程序
}
return true;
}
return super.onKeyDown(keyCode, event);
}
好了,现在打包到手机上就可以了。
大家轻喷
--------------------蛋蛋