在 Cocos2d js 中取消计划更新
Unschedule update in Cocos2d js
您好,在我的 cocos2d js 应用程序中,我使用的是 'this.scheduleUpdate()',它工作正常,但是当我使用 this.unscheduleUpdate() 时,它似乎起作用并挂起应用程序。
有人能告诉我如何让它工作吗……我正在分享下面的代码。
谢谢
var HelloWorldLayer = cc.Layer.extend({
sprite:null,
ctor:function () {
this._super();
var cal=function(){
this.unscheduleUpdate();
}
this.scheduleUpdate();
cal();
return true;
},
update:function(dt){
cc.log("schedule "+dt);
}
});
var HelloWorldScene = cc.Scene.extend({
onEnter:function () {
this._super();
var layer = new HelloWorldLayer();
this.addChild(layer);
}
});
您很可能 运行 遇到了范围问题。 this
在该函数中没有引用您的层,以下应该有效:
替换:
var cal=function(){
this.unscheduleUpdate();
}
与:
var that = this;
var cal = function() {
that.unscheduleUpdate();
};
您好,在我的 cocos2d js 应用程序中,我使用的是 'this.scheduleUpdate()',它工作正常,但是当我使用 this.unscheduleUpdate() 时,它似乎起作用并挂起应用程序。 有人能告诉我如何让它工作吗……我正在分享下面的代码。 谢谢
var HelloWorldLayer = cc.Layer.extend({
sprite:null,
ctor:function () {
this._super();
var cal=function(){
this.unscheduleUpdate();
}
this.scheduleUpdate();
cal();
return true;
},
update:function(dt){
cc.log("schedule "+dt);
}
});
var HelloWorldScene = cc.Scene.extend({
onEnter:function () {
this._super();
var layer = new HelloWorldLayer();
this.addChild(layer);
}
});
您很可能 运行 遇到了范围问题。 this
在该函数中没有引用您的层,以下应该有效:
替换:
var cal=function(){
this.unscheduleUpdate();
}
与:
var that = this;
var cal = function() {
that.unscheduleUpdate();
};