1

我遇到了一个我不知道如何解决的错误,我在我的 init 中声明了一个 NSMutablearray,用两个精灵填充它来制作动画,并声明 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,那么它就可以工作。问题是我想多次运行这个动作,感觉一次又一次填充和声明相同代码的正确方法......

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

4

1 回答 1

0
animParpadeoNina =  [NSMutableArray alloc];

这应该是:

animParpadeoNina =  [[NSMutableArray alloc] init];
于 2012-10-16T18:37:09.143 回答