之前測了一下android自帶的后退按鈕,用在cocos2d-js中是沒有獲取到的
(可能是cocos2d-js已經把android的后退事件截取了,所以原生java代碼沒有用),
沒辦法就只能用cocos2d-js的自己實現:
一、准備一張后退圖片
二、添加監聽后退按鈕的事件:
//后退鍵按兩次即退出游戲 cc.eventManager.addListener({ event: cc.EventListener.KEYBOARD, onKeyReleased: function(keyCode, event) { if (keyCode == cc.KEY.back) { //beta版本這里的back的keycode有誤,也可以自行改為6 cc.log("return button clicked. keycode:" + keyCode); that.exitBy2Click(); } else if (keyCode == cc.KEY.menu) { //beta版本這里的menu的keycode有誤,也可以自行改為15 cc.log("menu button clicked. keycode:" + keyCode); } }}, this);
三、添加函數exitBy2Click()
isExit:false,//全局變量
exitLogo:null,//全局變量
exitBy2Click:function(){ if (this.isExit == false) { this.isExit = true; // 准備退出 // 如果2秒鍾內沒有按下返回鍵,則啟動定時器取消掉剛才執行的任務 this.exitLogo = new cc.Sprite(res.exitLogo_png); this.exitLogo.setPosition(cc.pAdd(cc.visibleRect.bottom, cc.p(0, 120))); this.addChild(this.exitLogo, 10); var arrowAction = cc.sequence( cc.fadeOut(2),cc.callFunc(function () { this.isExit = false; }, this)); this.exitLogo.runAction(arrowAction); } else { cc.director.end(); } }