我正在使用CocosBuilder创建一个简单的动画,它只是将CCLayerColor从右上角移动到左下角,由于某种原因,动画将无法执行。我将时间轴设置为自动播放,持续时间为2秒。我有一个分类所有图层的类,然后将这些图层添加到CCScrollLayer。我只是想知道问题是当我从场景中删除图层然后添加到CCScrollLayer时动画被删除而不是执行。
CCScene* scene = [CCBReader sceneWithNodeGraphFromFile:@"Untitled.ccbi"];
self.scrollLayer = [[CCScrollLayer alloc] init];
CCLayer* child = [[scene children] objectAtIndex:0];
for (CCNode* layer in [child children]) {
[layer removeFromParent];
[self.scrollLayer addChild:layer];
[layer resumeSchedulerAndActions];
}
[self.scrollLayer updatePages];
self.scrollLayer.delegate = self;
[self addChild:self.scrollLayer];
我可以看到CCLayerColor对象被添加到屏幕上,但它只是没有动画。
我已经为CCScrollLayer添加了一些自定义代码来处理这种情况,但我只是对动画未执行的原因感到困惑。任何帮助都会很棒!
编辑:也许在CocosBuilder中更好的问题是时间线上的动作是直接链接到执行动作的对象还是以某种方式通过场景链接到该对象?答案 0 :(得分:0)
也许您忘记将scrollLayer添加为子项?
[self addChild:self.scrollLayer];
在示例代码中,未引用从ccbi创建的node
。也许你实际上并没有使用它?