MfMailComposeViewController设备崩溃

时间:2013-06-25 01:02:11

标签: ios objective-c mfmailcomposeviewcontroller

当没有添加邮件帐户时,单击在设备上撰写邮件时,我的应用程序崩溃。任何人都知道我可能做错了什么。非常感谢任何帮助,提前感谢。

- (IBAction)sendMail:(id)sender {
    MFMailComposeViewController *mail  = [[MFMailComposeViewController alloc] init];
    NSArray *recipients = [NSArray arrayWithObject:@""];
    mail.mailComposeDelegate = self;
    [mail setSubject:@""];
    [mail setToRecipients:recipients];
    [self presentViewController:mail animated:YES completion:NULL];
}

1 个答案:

答案 0 :(得分:0)

每当您询问有关您遇到的错误的问题时,都应该包含完整的错误消息。

但是根据您的描述,您应该执行以下操作:

- (IBAction)sendMail:(id)sender {
    if ([MFMailComposeViewController canSendMail]) {
        MFMailComposeViewController *mail  = [[MFMailComposeViewController alloc] init];
        mail.mailComposeDelegate = self;
        [self presentViewController:mail animated:YES completion:NULL];
    } else {
        // let user know they can't send email
    }
}

另请注意,如果您没有设置任何值,则没有理由设置主题或收件人。