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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。