2012-02-20 3 views
1

J'ai un vide. Ce vide fait quelque chose de vraiment lent, donc au début de Void j'ai mis une alerte, et à la fin j'ai mis un autre avertissement. Comme ici:Vue d'alerte au début et à la fin d'un vide

-(void)action { 
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Start" message:@"Start." delegate:self cancelButtonTitle:@"Ok." otherButtonTitles:nil]; 
[alerta show]; 
[alert release]; 

//Something really slow 

    UIAlertView *alertEnd = [[UIAlertView alloc] initWithTitle:@"End" message:@"End." delegate:self cancelButtonTitle:@"Ok." otherButtonTitles:nil]; 
[alertEnd show]; 
[alertEnd release]; 
} 

Mais quand je lance ce code, les alertes ne sont présentés à la fin du vide, après l'action lente.

Comment puis-je résoudre ce problème?

Répondre

0

Tout d'abord: essayez d'éviter d'utiliser de nombreuses alertes car il est pas humain aux utilisateurs vous. Montrez UIActivityIndicator à la place.

Si vous devez, essayez ce code pour montrer la première alerte:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Start" message:@"Start." delegate:self cancelButtonTitle:@"Ok." otherButtonTitles:nil]; 

[alert performSelector: @selector(show) 
       onThread: [NSThread mainThread] 
      withObject: nil 
     waitUntilDone: NO]; 
+0

Merci beaucoup !! Et une autre chose: je vais utiliser UIActivityIndicator. :-) –

+0

S'il vous plaît faire, les utilisateurs vous en remercieront :) –

0

vous devrez séparer les deux en deux méthodes, puis appeler un à l'aide

[self performSelector: afterDelay:] 

méthode

Questions connexes