Метод clickedButtonAtIndex не вызывается

#ios #objective-c #uialertview #uialertviewdelegate

#iOS #objective-c #uialertview #uialertviewdelegate

Вопрос:

однако, когда пользователь нажимает на кнопку на UIAlertView , clickedButtonAtIndex метод должен вызываться, этого не происходит :

в .h я вызвал UIAlertView протокол :

 @interface RechercherViewController : UIViewController<UIAlertViewDelegate>  {

//code
}
  

и в .m файле у меня есть это :

 -(void)requestFailed:(ASIHTTPRequest *)request
{
    //quand il y aura un échec lors de l'envoie de la requête

    UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"TopStation"
                                                message :@"Your internet connexion is down"
                                                delegate:nil
                                       cancelButtonTitle:@"OK"
                                       otherButtonTitles:nil];

                       [alert show];
                       [alert release];

}

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{

    if (buttonIndex == 0) {
        NSLog(@"buttonIndex 0");
    } else if(buttonIndex == 1) {
        NSLog(@"buttonIndex 1");
    }
}
  

в файле журнала ничего не отображается, пожалуйста, помогите, заранее спасибо 🙂

Ответ №1:

delegate:nil в чем проблема. Передайте self в качестве делегата initWithTitle:message:delegate:cancelButtonTitle:otherButtonTitles: .

Ответ №2:

Вы передаете nil в качестве аргумента делегата. Передайте self вместо этого.