Pergunta

Eu tenho uma camada no meu jogo. Ao terminar de jogo que eu quero mostrar usuário uma UIAlertView para reiniciar ou parar o jogo. Mas isto não está funcionando. Eu também sou dado a UIAlertViewDelegate delegado à camada.

Qualquer Solutions?

Meu código segue,

-(void)gameFinished{
    [[UIApplication sharedApplication] setIdleTimerDisabled:NO];

    [self unschedule:@selector(checkForCollision)];
    [self unschedule:@selector(dropObject)];
    [self stopBackgroundMusic];

    [self startNewForegroundMusic:@"GameOver" ofType:@"caf"];
    [self playForegroundMusic];

    [[Director sharedDirector] pause];
    UIAlertView *view=[[UIAlertView alloc] initWithTitle:@"Game Finished" message:@"Want to play again?" delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes"];
    [view show];
    [view release];
} 
Foi útil?

Solução

Será que o seu acidente de código, ou ele simplesmente não exibir?

Você tem um ligeiro erro na linha

[[UIAlertView alloc] initWithTitle:@"Game Finished"
                     message:@"Want to play again?"
                     delegate:self cancelButtonTitle:@"No"
                     otherButtonTitles:@"Yes"]

Esta deve ser

[[UIAlertView alloc] initWithTitle:@"Game Finished"
                     message:@"Want to play again?"
                     delegate:self cancelButtonTitle:@"No"
                     otherButtonTitles:@"Yes", Nil]

Nota:. O último parâmetro é o argumento variável e, portanto, deve ser Nil terminado

Outras dicas

Tente mostrar o alertview antes de o diretor é fazer uma pausa que pode funcionar ..

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top