MFmailcomposer有时会出错?

hac*_*ker 9 iphone ipad ios

我正在使用MFMailcomposer从我的iPhone应用程序发送邮件.它工作正常,但是当我将它移植到iPhone 5和ios6时

_serviceViewControllerReady:error: Error Domain=_UIViewServiceInterfaceErrorDomain Code=1 "The operation couldn’t be completed. (_UIViewServiceInterfaceErrorDomain error 1. 但如果我再次运行没有问题,它工作正常.

我正在呈现像这样的邮件作曲家

action
{
Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
    if (mailClass != nil)
    {
        // We must always check whether the current device is configured for sending emails
        if ([mailClass canSendMail])
        {
            [self displayComposerSheet];
        }
        else
        {
            [self launchMailAppOnDevice];
        }
    }
    else
    {
        [self launchMailAppOnDevice];
    }

}


void)displayComposerSheet 
{

    AppDelegate *appdelegate=[[UIApplication sharedApplication] delegate];
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;  

    [picker setSubject:@"report"];



    // Set up recipients
    NSArray *toRecipients=[NSArray arrayWithObject:@""]; 
    NSArray *ccRecipients =[[NSArray alloc]init];//= [NSArray arrayWithObjects:@"", @"", nil]; 
    NSArray *bccRecipients=[[NSArray alloc]init];// = [NSArray arrayWithObject:@""];    
    [picker setToRecipients:toRecipients];
    [picker setCcRecipients:ccRecipients];  
    [picker setBccRecipients:bccRecipients];    
    [picker setMessageBody:@"Please send me  now." isHTML:YES];





    [appdelegate.navigationController presentModalViewController:picker animated:YES];
    [appdelegate.navigationController.navigationBar setHidden:NO];
    [picker release];
}
Run Code Online (Sandbox Code Playgroud)

`

omz*_*omz 6

我有同样的问题,它似乎是一个与特定UIAppearance自定义相关的错误.当我删除UISearchBar背景图像的自定义时,它完全消失了.


Mau*_*lik 5

您应该使用:presentModalViewController在iOS 6中弃用.

[appdelegate.navigationController presentViewController:picker animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

代替

[appdelegate.navigationController presentModalViewController:picker animated:YES];
Run Code Online (Sandbox Code Playgroud)