IOS 6 Xcode 4.5 Сбой MFMailComposer

Я обновил XCode до 4.5, и теперь функция электронной почты дает сбой, если я нажимаю кнопку, чтобы отправить электронное письмо.

Что я делаю неправильно?

Я реализовал MessageUI.framework в своем заголовочном файле.

#import <UIKit/UIKit.h>
#import <MessageUI/MessageUI.h>

@interface ImpressumViewController : UIViewController <MFMailComposeViewControllerDelegate>

Вот мой код кнопки:

- (IBAction)kontakt:(id)sender {

    MFMailComposeViewController *mailcontroller = [[MFMailComposeViewController alloc] init];
    [mailcontroller setMailComposeDelegate:self];
    NSString *email =@"[email protected]";
    NSArray *emailArray = [[NSArray alloc] initWithObjects:email, nil];
    [mailcontroller setToRecipients:emailArray];
    [mailcontroller setSubject:@"Youtube Tutorials"];
    [self presentViewController:mailcontroller animated:YES completion:nil]; }

- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{
    [self dismissViewControllerAnimated:YES completion:nil];



    }

person user1355961    schedule 05.10.2012    source источник
comment
Не уверен, но попробуйте [self presentModalViewController: композитор анимированный: ДА завершение: ноль]; (Добавлен модальный)   -  person Romo    schedule 05.10.2012
comment
Привет, спасибо за ваш ответ. Но это не работает. Я думаю, что Modal - это старая версия   -  person user1355961    schedule 05.10.2012
comment
точно такой же код у меня работает   -  person Matthias Bauch    schedule 05.10.2012
comment
Я исправил свою проблему. Это была проблема в моем appdelegate с фоновым изображением uitableview...   -  person user1355961    schedule 05.10.2012
comment
@user1355961 user1355961, не могли бы вы подробнее рассказать о найденном вами решении? Как фоновое изображение повлияет на отправку электронного письма?   -  person SAHM    schedule 27.10.2012
comment
Пожалуйста, расширьте свое решение, у меня возникла эта проблема.   -  person h4xnoodle    schedule 13.02.2013


Ответы (1)


Вам нужно написать следующий код в этом методе делегата

- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{   switch (result)
    {
        case MFMailComposeResultCancelled:
            NSLog(@"Mail cancelled: you cancelled the operation and no email message was queued");
            break;
        case MFMailComposeResultSaved:
            NSLog(@"Mail saved: you saved the email message in the Drafts folder");
            break;
        case MFMailComposeResultSent:
            NSLog(@"Mail send: the email message is queued in the outbox. It is ready to send the next time the user connects to email");
            break;
        case MFMailComposeResultFailed:
            NSLog(@"Mail failed: the email message was nog saved or queued, possibly due to an error");
            break;
        default:
            NSLog(@"Mail not sent");
            break;
    }

    //[self dismissModalViewControllerAnimated:YES];
}
person Dipak Narigara    schedule 05.06.2013