2010-07-23 3 views
9

J'étais juste curieux de savoir comment je peux attacher une tâche différente à l'autreButtonTitle de UIAlertView. Le bouton Annuler vous retire automatiquement de l'application, mais que dois-je faire si je souhaite attacher une autre tâche à l'autre titreButtonTitle?otherButtonTitles in UIAlertView

Merci,

Répondre

22

délégué de UIAlertView "didDismissWithButtonIndex" à chaque fois que s'appelle u cliquez sur un bouton.

Essayez ceci:

UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"Message" 
               message:messageString 
               delegate:self 
             cancelButtonTitle:@"Back" 
             otherButtonTitles:@"Reply",@"Delete",nil]; 
[alert show]; 
[alert release]; 


- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 1) 
    { 
    NSLog(@"Reply"); 
    UIAlertView *myalert = [[UIAlertView alloc] initWithTitle:@"Button Clicked" message:@"U clicked Reply " delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 

    [myalert show]; 
    [myalert release]; 
    } 

    if (buttonIndex == 2) 
    { 
    NSLog(@"Delete"); 
    UIAlertView *myalert = [[UIAlertView alloc] initWithTitle:@"Button Clicked" message:@"U clicked Delete " delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 

    [myalert show]; 
    [myalert release]; 
    } 
} 
+0

Son dong rien quand je clique sur un de ces boutons. – Ashutosh

+0

trouver le code mis à jour – iPhoneDev

+0

Bonne réponse. Astuce: Ne confondez pas 'didDismissWithButtonIndex' (invoqué * après que * UIAlertView quitte la hiérarchie de l'écran) avec' clickedButtonAtIndex' (invoqué alors que UIAlertView est toujours à l'écran et fait toujours partie de la hiérarchie de la vue d'écran). J'ai trouvé cette confusion dans d'autres réponses StackOverflow et d'autres endroits sur le web. –