J'ai un contrôleur de navigation d'où je lance un ModalViewController. Dans ce ModalViewController, je vais afficher le MailComposer qui est lui-même un autre ModalViewController.Deux ModalViewController
Maintenant, si l'utilisateur clique sur le bouton d'envoi, MailComposerView doit être rejeté ainsi que l'autre ModalViewController. Pour cela j'appelle une méthode déléguée dans le mailComposerController.
Maintenant que la MailComposerView sera rejetée, mais pas l'autre ModalViewController et je reçois le message suivant d'erreur
attempt to dismiss modal view controller whose view does not currently appear. self = <UINavigationController: 0x724d500> modalViewController = <UINavigationController: 0x72701f0>
Avez-vous une idée de ce que je fais mal?
Première ModalView
- (void)addList {
NSLog(@"addList");
//AddListViewController *addListViewController = [[AddListViewController alloc] init];
AddListViewController *addListViewController = [[AddListViewController alloc] initWithStyle:UITableViewStyleGrouped];
addListViewController.delegate = self;
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:addListViewController];
navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = YES;
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
[addListViewController release]; }
Dans le AddListViewController appelant le MailView
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.mailComposeDelegate = self;
NSString *subject = [NSString stringWithFormat:@"Group invite for groupname: %@", @"mhm"];
[mailComposer setSubject:subject];
// Fill out the email body text
NSString *emailBody = @"This is an group invite bla bla";
[mailComposer setMessageBody:emailBody isHTML:NO];
[self presentModalViewController:mailComposer animated:YES];
[mailComposer release];
Dans la méthode mailComposerController
[self.navigationController dismissModalViewControllerAnimated:YES];
[self.delegate finishAddList:checkmark andListName:listName.text];
Dans le délégué finsihAddList
[self dismissModalViewControllerAnimated:YES];
Essayé mais toujours la même erreur [self.delegate performSelector: @selector (finishAddList :) withObject: listName.text afterDelay: 0.0f]; – gabac
Avez-vous essayé de supprimer l'animation au second rejet? Et avez-vous essayé avec un plus grand retard? – jv42
plus grande offre aide! merci beaucoup – gabac