2010-12-12 71 views
2
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"An Alert!" 
                delegate:self cancelButtonTitle:@"OK" otherButtonTitles:[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=301349397&mt=8"]];]; 
    [alert show]; 
    [alert release]; 

J'essaie d'afficher un UIAlertView avec un bouton "Ok" et un bouton "Acheter la version complète". Comment puis-je faire fonctionner le code ci-dessus?UIAlert View Objectif C - Ouverture du lien App Store

Merci

+0

Les méthodes prennent des titres de bouton, pas de code arbitraire. – Eiko

Répondre

7

Vous devez gérer le clic de bouton dans la UIAlertViewDelegate que vous spécifiez.

En outre, otherButtonTitles est simplement un va_list de NSString objets à utiliser comme titres, vous définissez ce qui se passe quand ils sont taraudés dans la méthode de alertView:clickedButtonAtIndex:UIAlertViewDelegate:

- (void) alertView:(UIAlertView *) alertView clickedButtonAtIndex:(NSInteger) index { 
    if(index == 1) { 
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=301349397&mt=8"]]; 
    } 
} 

Ne pas oublier de mettre le delegate:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"An Alert!" 
                  delegate:self 
                cancelButtonTitle:@"OK" 
                otherButtonTitles:@"Buy Full Version"]; 
[alert show]; 
[alert release]; 
+0

Juste pour le rendre plus clair ** benhowdle89 ** au cas où vous ne l'auriez pas compris, l'étape la plus importante ici est de vous conformer au protocole 'UIAlertViewDelegate'. Vous pouvez le faire dans votre interface en utilisant ''. –