MFMailComposeInternalViewController中的断言失败

时间:2012-11-16 19:32:46

标签: iphone ios6 mfmailcomposeviewcontroller

在iOS中显示电子邮件提示时出现奇怪的断言失败

代码:

- (void)displayComposerSheet:(id)delegate withDataSource:(id )datasource {
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.navigationBar.tintColor = self.navigationController.navigationBar.tintColor;
    picker.mailComposeDelegate = delegate;
    //Use the datasource to fill in the email fields
    if ([[datasource recipients] count] > 0)
      [picker setToRecipients:[datasource recipients]];
    [picker setSubject:[datasource subject]];

    [picker setMessageBody:[datasource emailText] isHTML:[datasource isHTML]];
    [[UIWindow topMostController] presentModalViewController:picker animated:YES];
    [picker becomeFirstResponder];

    [picker release];
}

MyApp[60324:907] *** Assertion failure in -[MFMailComposeInternalViewController _endDelayingCompositionPresentation], /SourceCache/MessageUI/MessageUI-1075.10/Mail/MFMailComposeInternalViewController.m:316

1 个答案:

答案 0 :(得分:0)

躲避混合的危险....

我用我自己的内部使用setViewControllers的方法调整了UINavigationController的pushViewController方法。 (我遇到了一些线程问题,同一个视图控制器被推了两次。)