在init中声明NSMutable数组和动画后出现CCAnimate错误

时间:2012-10-16 17:44:32

标签: cocos2d-iphone

我遇到了一个我不知道如何解决的错误,我在我的init中声明了一个NSMutablearray,用两个sprite填充它来制作动画,然后声明CCAnimation;

        animParpadeoNina =  [[NSMutableArray alloc]init];
    [animParpadeoNina addObject:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"ninaCamina002b.png"]];
    [animParpadeoNina addObject:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"ninaCamina002.png"]];
    for (id obj in animParpadeoNina) {
        NSLog(@"%@",obj);
    }

    paralanina = [CCAnimation animationWithSpriteFrames:animParpadeoNina delay:.2];

现在,如果我在声明一切之后调用动作,动画就可以了,但如果我尝试在任何其他函数中运行CCAnimation,我会得到“EXC_BAD_ACCESS(code = 1,address = 0xb0ab1de8)

如果我填充数组并在函数内声明CCAnimation,那么它可以工作。问题是我想多次运行这个动作,并且感觉不正确的方式来填充并再次声明相同的代码......

我做错了什么?有什么建议可以解决这个问题? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

animParpadeoNina =  [NSMutableArray alloc];

这应该是:

animParpadeoNina =  [[NSMutableArray alloc] init];