У меня проблема со следующим кодом.
<br>
mySpriteArray=[[NSMutableArray alloc] init];</p>
<code> star=[CCSprite spriteWithFile:@"22.png"];
for(int i=0;i<10; i++)
{
[mySpriteArray insertObject:star atIndex:i];
}
// NSLog(@"x=%i",[mySpriteArray count]);
for (int i=0; i<10; i++) // Opponents is NSMutableArray
{
CCSprite *tempSprite = (CCSprite *) [mySpriteArray objectAtIndex:i];
tempSprite.position=ccp(100,100);
[self addChild:tempSprite];
}
</code>
}
где star - это объект CCSprite, а mySpriteArray - изменяемый массив. Проблема заключается в том, что при запуске программы происходит сбой и появляется сообщение
* Ошибка подтверждения в - [GameScene addChild: z: tag:], / Users / salimsazzad / Desktop / охотник за балонами / libs / cocos2d / CCNode.m: 305
2010-10-08 19: 05: 35.854 balon hunter [3967: 207] * Завершение работы приложения из-за необработанного исключения «NSInternalInconsistencyException», причина: «дочерний элемент уже добавлен. Он не может быть добавлен снова ».
Я не могу понять, в чем дело, я добавляю 10 объектов, а не 1 объект в 10 раз, потому что CCSprite * tempSprite = (CCSprite *) [mySpriteArray objectAtIndex: i]; каждый раз создаю новый объект.
так в чем проблема ???