Я использую cocos2d-android-1 для разработки игры.У меня есть некоторая путаница, связанная с распределением памяти.Предположим, мне нужен массив спрайтов.Я объявлю их как
CCSprite mySprites = new CCSprite[MAX_SPRITES];
и при создании я создам их и добавлю к текущему слою, например:
for(int i=0;i<MAX_SPRITES;i++)
{
mySprites[i] = CCSprite.sprite("image_"+i+".png");
this.addChild(mySprites[i]);
}
Теперь спрайты добавляются в слой, но нам нужно получить к ним доступ, покаход игры, поэтому мы будем использовать mySprites;Поэтому мой вопрос, когда мы делаем это .removeAllChildren (true);для этого слоя удалят ли все дочерние элементы, а также спрайты mySprites?Или нам нужно сделать что-то вроде этого
for(int i=0;i<MAX_SPRITES;i++)
{
mySprites[i] = null;
}
В моей игре я думаю, что память протекает, если есть случай с аналогом.
Мы также можем использовать теги для извлечения спрайтов вместо использования
CCSprite mySprites = new CCSprite[MAX_SPRITES];.
Подскажите, пожалуйста, как это можно решить?
Спасибо.