Sto lavorando a un'app in cui mi piacerebbe utilizzare cocos2d nella schermata principale dell'app, ma non altrove (in altri luoghi la roba UIKit standard è più appropriata). Quindi, ho impostato EAGLView come root view in un UINavigationController, e quando l'utente tocca nel posto giusto spingo un nuovo controller di visualizzazione sul controller nav.cocos2d e UINavigationController trouble
Questo funziona benissimo, finora. La roba cocos2d/chipmunk nella vista home funziona alla grande, spingendo un nuovo controller di visualizzazione a funzionare come previsto.
Ma quando ritorno alla visualizzazione iniziale, non c'è niente. Tutto quello che vedo sono lo sfondo della finestra e la barra di navigazione.
Ho impostato un punto di interruzione nel controller della vista radice -viewDidAppear: per vedere cosa succede dopo il pop, e finora tutto sembra normale (o almeno lo stesso come lo era prima del push).
La spinta è solo una spinta del controller nav standard di bog. Non vedo alcun tipo di avviso di memoria. Qualcuno ha pensieri su cosa sta succedendo?
C'è un progetto semplice demo che mostra questo comportamento a http://cl.ly/1Q050s0h2k47032K1Y1N
Questo è basato sul modello di progetto cocos2d + chipmunk. Tocca su Grossini e un nuovo controller di visualizzazione viene inserito nello stack. Tocca il pulsante Indietro e Grossini non c'è più.
E solo per renderlo interessante, questo problema esiste solo su un dispositivo iOS (sto utilizzando 4.1), non nel simulatore.
dubito che questo è il problema, ma si sta perdendo questi due ragazzi: http://cl.ly/1J26180i383F3H0z3V2L –
Io non sono nemmeno sicuro di quello che quelle sono, ma non sembrano correlati. –
Ho scoperto che se myviewnapad chiama call -setNeedsLayout su EAGLview, gli oggetti cocos2d vengono ripristinati e la vista principale è visibile dopo che il controller di navigazione viene visualizzato come root. C'è uno sfarfallio evidente, sebbene-- per un momento, gli oggetti cocos2d non siano visibili, ma poi appaiono. Una versione modificata del mio demo che incorpora questo è http://cl.ly/1L423a1x27373t1q0s0y Questo sembra un progresso ma è un brutto guizzo. –