【发布时间】:2014-06-26 15:15:39
【问题描述】:
我正在制作一个游戏,并将 CCSprites 放入 NSMutableArray。
当我第一次开始游戏时,精灵出现在屏幕上,一切似乎都正常。 但是当我切换到另一个场景并返回时,屏幕上看不到任何精灵。 下面是初始化 Sprite 的代码。
-(void spritesInit)
gpsUsersSpritesArray = [[NSMutableArray alloc]init];
for (int i = 0 ; i < [userArray count] ; i++){
playerSprite = [CCSprite spriteWithFile:@"greenspot.png"];
playerSprite.position = ccp( winSize.width/2, winSize.height/2);
[self addChild:playerSprite z:5];
[gpsUsersSpritesArray addObject:playerSprite];
[playerSprite release];
}
}
每次调用场景时都会运行上述方法。
我在精灵上运行下面的动作,第一次也很好,但当我离开并返回场景时又不行。精灵似乎已加载,并且代码在有问题的 NSMutableArray 中迭代而没有崩溃,这让我感到困惑。
for (CCSprite *userspot in gpsUsersSpritesArray){
id fadein = [CCFadeTo actionWithDuration:0.05 opacity:255];
id fadeout = [CCFadeTo actionWithDuration:dotFadeTime opacity:30];
id seq2 = [CCSequence actions:fadein, fadeout,nil ];
[userspot runAction:seq2];
}
我曾尝试保留 NSMutableArray,但这也无济于事。 我还尝试强制精灵可见并确保精灵的不透明度设置为 255,但仍然没有运气。
我可能忽略了一些东西,但我不这么认为。
谁帮帮我?
非常感谢。
【问题讨论】:
标签: iphone cocos2d-iphone nsmutablearray ccsprite