1

2つの同じCCSpriteBatchNodeを作成し、それぞれ異なるCCLayerを追加しました。

CCSpriteBatchNode *mNode =      [param objectForKey:@"BatchNode"];

if (self =[super initWithTexture:mNode.texture rect:rect ])

{

    CCAnimation *walkAnim = [CCAnimation animationWithFrames:[[allFrameCache objectAtIndex:0] objectAtIndex:0] delay:frequencyFloat];
    CCAction* walkAction = [CCRepeatForever actionWithAction:[CCAnimate actionWithAnimation:walkAnim restoreOriginalFrame:NO]];
    [self runAction:walkAction];

}

しかし、それは次のように表示されます:2012-07-15 11:18:27.389 SanGuo_ [21379:707] *キャッチされない例外「NSInternalInconsistencyException」のためにアプリを終了します。理由:「CCSpriteは同じテクスチャIDを使用していません」

私は初心者で、長い間研究を続けています。私は非常に落ち込んでいました。誰が私を助けてくれますか?

4

1 に答える 1

3

CCSpriteは同じテクスチャIDを使用していません

スプライトバッチノードと同じテクスチャを使用しているスプライトバッチノードにのみスプライトを追加できます。これは、バッチノードとは異なるテクスチャを持つバッチノードにスプライトを追加しようとしたときに発生するエラーです。

解決策:スプライトがバッチノードと同じテクスチャを使用していることを確認してください。

于 2012-07-15T08:42:47.307 に答える