关于cocos2dx里面的onKeyDown返回按钮的问题

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);  
    } 

好了,现在打包到手机上就可以了。

大家轻喷

--------------------蛋蛋

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值