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

来源:互联网 发布:迪杰斯特拉算法 编辑:程序博客网 时间:2024/05/01 20:01

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



源引:http://blog.sina.com.cn/s/blog_7dbac1250101pkc7.html

0 0
原创粉丝点击