重复添加监听为什么和想象的结果不同呢

for(var i=0;i<10;i++){
var listen = cc.EventListener.create({
event: cc.EventListener.TOUCH_ONE_BY_ONE,
onTouchBegan:function (touch, event) {
var pos =touch.getLocation();
var target = event.getCurrentTarget();

                if ( cc.rectContainsPoint(target.getBoundingBox(),pos)) {
                    cc.log("touched"+i);
                    return true;
                }
                return false;
            }
        });

        var sp = this.getChildByTag(i);
        cc.eventManager.addListener(listen,sp);
    }

都放在了for循环里, 获取不同精灵添加监听,可是结果是 按哪个精灵都是输出 i=9 都是相同的 为什么… 不是每次循环都重新定义了吗…

时间确实没问题,但你onTouchBegan的跟踪直接是跟踪i,这个肯定是9. 创建sp后. sp.info = i; 然后跟踪的时候,请用cc.log(target.info);