5

我正在尝试通过我的应用程序发送电子邮件,并且我正在使用以下代码:

        if ([MFMailComposeViewController canSendMail]) {
            MFMailComposeViewController *controller = [[MFMailComposeViewController alloc] init];
            controller.mailComposeDelegate = self;

            NSString *subject = @"";
            NSString *body = @"";

            [controller setSubject:subject];
            [controller setMessageBody:body isHTML:YES];

            [self presentModalViewController:controller animated:YES];

        } else {
            NSString *message = @"Error opening mail, please make sure you have an email account setup";
            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Oops" message:message delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
            [alert show];
        }

我收到一个奇怪的错误,在我的 iPhone 5 上弹出撰写屏幕,没有正文(尽管正文已在上面设置)。如果单击任何框并因此无法编辑,则无法看到光标,并且发送按钮不可单击。当我关闭屏幕时,我得到以下信息:

_serviceViewControllerReady:error: Error Domain=_UIViewServiceErrorDomain Code=1 "The operation couldn’t be completed. (_UIViewServiceErrorDomain error 1.)"

但是,当我在 iPhone 4s、iPhone 4 和模拟器上测试时,它运行良好。我还在另一台 iPhone 5 上对其进行了测试,它运行良好。身体在那里,我可以发送电子邮件等。

还有什么我可能会丢失的吗?我有两个与手机上的邮件相关联的电子邮件帐户,因此canSendMail应该可以使用...

4

1 回答 1

13

尝试在其他应用程序中使用撰写对话框。如果您没有其他应用可以尝试,您可以下载并编译Apple 的 Sample。如果它在其他应用程序中不起作用,请尝试重新启动您的设备。

于 2013-01-23T22:46:58.097 回答