Coco2d-js/Cocos2d-html5中Android返回键实现

导语:
首先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
});

原文地址:https://www.cnblogs.com/yxysuanfa/p/6971495.html