Как изменить сцены в cocos2d при сохранении состояния исходной сцены - PullRequest
4 голосов
/ 03 августа 2010

В моем проекте cocos2d у меня есть две сцены. Я перехожу между ними, используя CCDirector replaceScene. Можно ли сохранить состояние текущей сцены, чтобы при изменении сцены на другую сцену, а затем на исходную версию все объекты и переменные в оригинале были одинаковыми.

Спасибо,

nonono

1 Ответ

9 голосов
/ 03 августа 2010

Вместо использования replaceScene вы можете использовать pushScene: и popScene.pushScene: помещает новую сцену в стек и отображает ее.Когда вы закончите эту сцену, вызовите popScene, чтобы вернуться к предыдущей сцене в стеке.

[[Director sharedDirector] pushScene: newScene];
//...
[[Director sharedDirector] popScene];

Обратите внимание, что это оставляет вашу предыдущую сцену в памяти (как вы и просили), так что это рекомендуется использовать replaceScene:, если возможно.Если вы используете pushScene: и popScene, лучше всего сохранять стек сцены довольно маленьким.

...