2010-09-21 5 views
1

Je veux créer sur le diaporama dans mon application iphone qui s'ouvre si l'utilisateur ne touche pas l'écran pendant 30 secondes, pour cela j'ai fait sur la méthode qui réinitialiser le temps lorsque l'utilisateur touche l'écran .effet de diaporama dans l'iphone

J'ai utilisé la classe nstimer pour gérer l'événement timer.

mon problème est que même si invalidant la minuterie de l'événement a été le feu après l'intervalle de temps ma méthode de temporisation de réinitialisation est comme ci-dessous

-(void) resetTimer { 

    if(timerForScreenSaver != nil) 
    { 
     timerForScreenSaver = nil; 
     [timerForScreenSaver invalidate]; 
     NSLog(@"timer is invalidate %@ ",timerForScreenSaver); 
    } 

    timerForScreenSaver = [NSTimer scheduledTimerWithTimeInterval:15.0 target:self selector:@selector(showScreenSaver) userInfo:nil repeats:NO]; 

    NSLog(@"timer is set"); 
} 

peut me aider à réinitialiser le compteur.

Merci et Regard
      Kunal Patel

Répondre

2

Swap les deux lignes suivantes:

timerForScreenSaver = nil; 
[timerForScreenSaver invalidate]; 

Vous faites votre néant minuterie si invalidantes n'a pas d'effet

+0

je l'ai déjà essayer cette chose .. mais il plantage l'application –

+0

peut être vous invalidez votre minuterie plus de une fois pour une raison quelconque? Avec quelle erreur votre application se bloque? – Vladimir