Проблема с cocos2d и UINavigationController

Я работаю над приложением, в котором я хотел бы использовать cocos2d на главном экране приложения, но нигде в другом месте (в других местах стандартный материал UIKit более уместно). Итак, у меня EAGLView настроен как корневое представление в UINavigationController, и когда пользователь нажимает в нужном месте, я нажимаю новый контроллер представления на контроллер навигации.

Это ' пока работает отлично. Материал cocos2d / chipmunk в домашнем представлении работает отлично, запуск нового контроллера представления работает, как ожидалось.

Но когда я возвращаюсь в домашний экран, там ничего нет. Все, что я вижу, это фон окна и панель навигации.

Я установил точку останова в корневом контроллере представления -viewDidAppear: чтобы увидеть, что происходит после всплывающего сообщения, и пока все выглядит нормально (или, по крайней мере, так же, как оно было до нажатия).

Это просто стандартное нажатие навигационного контроллера. Я не вижу никаких предупреждений о памяти. У кого-нибудь есть мысли о том, что происходит?

Есть простой демонстрационный проект, который демонстрирует это поведение по адресу http://cl.ly/1Q050s0h2k47032K1Y1N

Он основан на шаблоне проекта cocos2d + chipmunk. Нажмите на Grossini, и новый контроллер представления будет помещен в стек. Нажмите кнопку «Назад», и Гроссини исчезнет.

И, чтобы было интересно, эта проблема существует только на устройстве iOS (я использую 4.1), а не в симуляторе.

5
задан Tom Harrington 15 December 2010 в 05:02
поделиться