Sto provando a riprodurre un'animazione .gif in cocos2D. Per questo sto usando la libreria glgif. Ora, per visualizzare l'animazione sto facendo una pausa al regista, aggiungendo una sottoview per mostrare l'animazione e dopo che l'animazione è terminata riprendo il regista. Tuttavia, non è possibile riprendere lo stato di Director e viene visualizzato vuoto. Così ho provato questo senza fermarmi e riprendere questo direttore e ancora non ha funzionato. Ho anche provato a staccare il regista prima dell'animazione e ad aggiungerlo dopo e anche quello non ha funzionato.Cocos2D Director Pausa/Ripresa numero
Quindi c'è un modo per mettere in pausa/sospendere il Director nell'applicazione e il ripristino corretto è tornato?
Grazie.
codice di esempio:
[[Director sharedDirector] pause];
[[Director sharedDirector] detach];
AppDelegate *del = [[UIApplication sharedApplication] delegate];
[del.window addSubview:del.viewController.view];
[del.window makeKeyAndVisible]; // this is code to call glgif class and start anim.
//code to resume the director
AppDelegate *del = [[UIApplication sharedApplication] delegate];
[[Director sharedDirector] resume];
[[Director sharedDirector] attachInView:del.window];
MScene *m = [MScene node];
[[Director sharedDirector] replaceScene:m];
Quale versione di Cocos2D stai usando? Puoi pubblicare un esempio di codice? Che regista usi? Cosa usi per metterlo in pausa/riprenderlo? – nash
Tieni presente che 'pause' in realtà non mette in pausa il regista. Invece stai dicendo al regista che il tuo gioco è in uno stato di pausa e il regista risponde funzionando ancora, ma a un framerate (molto) più basso. 'resume' dice al direttore di riprendere a correre al framerate di destinazione completo. –