標籤:
導語:首先Cocos2d-x當中實現Menu和Back按鍵相對簡單一點,而在資源較少的Cocos2d-html5當中,要實現返回還是有一點不一樣的,而且有沒有具體的demo,也就只有自己去看api文檔,這也是頭痛的一件事情,以下總結和歸納在Cocos2d-html5當中,如何?返回鍵,和Menu鍵。
分析:cocos2d中目前只有Layer以及其子類能夠擷取使用者輸入,即觸發使用者輸入的事件。這個結論是我通過查看API文檔猜測的,因為要觸發這些事件,必須要有setIsKeypadEnabled和setIsTouchEnabled方法,而API中只有layer和其子類有這兩個方法,所以很自然要實現返回必須是在Layer情境或者其子類去實現。
代碼:
myLayer.backClicked=function(){ cc.log("back Clicked"); cc.AudioEngine.getInstance().stopAllEffects(); cc.BuilderReader.runScene("", "LevelLayer"); } myLayer.setKeypadEnabled(true); 備忘:此方法只適合使用cocosEditord的時候使用,cocos2d-js3.0之後的版本請使用以下的代碼cc.eventManager.addListener({event: cc.EventListener.KEYBOARD,onKeyReleased: function(keyCode, event){if(keyCode == cc.KEY.back){}else if(keyCode == cc.KEY.menu){ }}}, this); cc.eventManager.addCustomListener(cc.game.EVENT_HIDE, function(){//onEnterBackground handler});cc.eventManager.addCustomListener(cc.game.EVENT_SHOW, function(){//onEnterForeground handler});
|
Coco2d-js/Cocos2d-html5中Android返回鍵實現