2010-10-23 4 views
0

J'espère utiliser une invite UIAlertView pour rappeler certains messages à l'utilisateur, l'aperçu sera automatiquement fermé dans 2 secondes.Utilisation de NSTimer fermer UIAlertView

mes codes:

IBOutlet UIAlertView *aUIAlertView; 

....

@property (retain,nonatomic) IBOutlet UIAlertView *aUIAlertView; 

....

 UIAlertView * alert=[[UIAlertView alloc] 
          initWithTitle: @"Reminder" 
            message: @"Message" 
            delegate:self 
           cancelButtonTitle:nil 
          otherButtonTitles:nil, nil]; 

     [NSTimer scheduledTimerWithTimeInterval:2 
             target:self 
             selector:@selector(timerFired1:) 
             userInfo:nil 
             repeats:NO]; 
     aUIAlertView=alert; 
     [alert show]; 




- (void)timerFired1:(NSTimer *)timer { 


    [aUIAlertView release];//I set the breakpoint here, aUIAlertView is not nill 


} 

minuterie a été invité, aUIAlertView n'est pas nul. mais la vue d'alerte restait affichée plutôt que fermée comme je l'espérais.

Bienvenue tout commentaire

Merci

Répondre

8

envoyer simplement le message -release à un objet ne pas garantie qu'il sera désallouée. En fait, dans ce cas, il est presque certain qu'il ne sera pas désaffecté, puisque le système l'affiche actuellement.

Le message que vous souhaitez envoyer lorsque votre minuteur se déclenche est dismissWithClickedButtonIndex:animated:.