2254人加入学习
(1人评价)
CocosCreator3.8入门教程-微信飞机大战

制作完成于2024年9月3日,使用CocosCreator3.8

价格 免费

关于老师所说的emit无法更新UI的修正

 

其实用emit信号发射是可以的,老师出现的问题是,在信号on绑定的时候忽略了第三个参数填写(第三个参数为上下文,也就是回调时指向哪个类的对象)。如没填写,则无法获取bombNumberLabel这个组件从而导致报错

GameManager.getInstance().node.on("onBombChange", this.onBombChange, this);

 

 

另外,emit信号发射函数是可以填写参数的,不需要额外自定义参数,最终在GameManager的addBomb代码如下:

public addBomb(){
        this.bombCount += 1;
        this.node.emit("onBombChange", this.bombCount);
    }

 

[展开全文]

public AddBomb() {

this.bombNumber++;

this.node.emit("onBombChange", this.bombNumber);

}

 

GameManager.getInstance().node.on("onBombChange",this.onBombChange,this)

 

onBombChange(bombNumer:number) {

console.log("onBombChange");

this.numberLabel.string = GameManager.getInstance().GetBombeNumber().toString();

}

[展开全文]

授课教师

加我的QQ问问题:804632564

课程特色

下载资料(1)
视频(62)