cc.systemEvent.on(cc.director.EVENT_AFTER_SCENE_LAUNCH,function () {
console.log("运行新场景之后所触发的事件。");//没打印
},this);
怎么监听cc.director.EVENT_AFTER_SCENE_LAUNCH
cc.systemEvent.on(cc.director.EVENT_AFTER_SCENE_LAUNCH,function () {
console.log("运行新场景之后所触发的事件。");//没打印
},this);
怎么监听cc.director.EVENT_AFTER_SCENE_LAUNCH
如果可以到话,看看源码,先自己尝试是否能解决再来发论坛,帖子也不要写什么来个大佬什么到,最好写具体到问题需求
cc.director.on(cc.Director.EVENT_AFTER_SCENE_LAUNCH, onSceneLaunched);
cc.director.off(cc.Director.EVENT_AFTER_SCENE_LAUNCH, onSceneLaunched);
用cc.director.on监听也试过 现在才发现。。
cc.Director.EVENT_AFTER_SCENE_LAUNCH
cc.director.EVENT_AFTER_SCENE_LAUNCH
其他:
cc.game.EVENT_HIDE 一会小写一会大写。。没提示。。api点过去查看也都能查看到creator.d.ts
PopupNotice.playLoadAnim();
cc.director.loadScene(“game”,function () {
PopupNotice.stopLoadAnim();
});
这样写 还能看见一瞬间的图
cc.director.on(cc.Director.EVENT_BEFORE_SCENE_LAUNCH, function(){
console.log("运行新场景之前所触发的事件。");
PopupNotice.playLoadAnim();
});
cc.director.on(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function(){
console.log("运行新场景之后所触发的事件。");
PopupNotice.stopLoadAnim();
});
这样写啥都看不见 只有打印的文字
并且刚打开游戏 会执行一次 运行新场景之后所触发的事件。 居然没 运行新场景之前所触发的事件。?!!
要沉了。。没人嘛。。
你要是把这句写在了onLoad里面的话(start等同理),cc.Director.EVENT_BEFORE_SCENE_LAUNCH不触发就是正常的
因为你on的时候引擎早就emit过了

cc.director.on(cc.Director.EVENT_BEFORE_SCENE_LAUNCH, function(){
console.log(“运行新场景之前所触发的事件。”);
});
刚试了一下 原来这个也是在之后触发
懂了
EVENT_BEFORE_SCENE_LOADING:加载新场景之前所触发的事件 这个在之前cc.director.loadScene(“hall”);
EVENT_BEFORE_SCENE_LAUNCH:运行新场景之前所触发的事件 这个在之后cc.director.loadScene(“hall”);
EVENT_AFTER_SCENE_LAUNCH:运行新场景之后所触发的事件 这个在之后cc.director.loadScene(“hall”);
只不过EVENT_BEFORE_SCENE_LAUNCH比EVENT_AFTER_SCENE_LAUNCH早执行了一点