在Cocos2d js中取消安排更新

时间:2015-03-20 13:06:24

标签: schedule 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);
    }
});

1 个答案:

答案 0 :(得分:1)

您很可能遇到范围问题。该函数中的this不是指您的图层,以下内容应该有效:

替换:

var cal=function(){
    this.unscheduleUpdate();
}

使用:

var that = this;
var cal = function() {
    that.unscheduleUpdate();
};