Я разрабатываю приложение, которое работает на всех целевых симуляторах развертывания (5.0-6.1) и на моих iPhone 3GS, 4, 4S и Gen 2 iPad. У меня была возможность сегодня попробовать запустить его на iPad Mini. Я работаю везде, кроме тех случаев, когда я пытаюсь перейти к объекту MFMailComposeViewController, чтобы отправить электронное письмо, которое вызывает его сбой с исключением.iPad Mini crashing on modal segue
Я использую код непосредственно из проекта образца MailComposer, но он всегда сбой, когда он вызывает presentModalViewController: animated :. Поэтому я попробовал presentViewController: анимированный: завершение: поскольку другой метод устарел, но он все равно не работает.
Я связан с MessageUI.framework импортировали классы:
#import <MessageUI/MessageUI.h>
#import <MessageUI/MFMailComposeViewController.h>
Делегат установлен. Вот код:
-(void)displayComposerSheet
{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"Contact Email"];
// Set up recipient
NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"];
[picker setToRecipients:toRecipients];
// [self presentModalViewController:picker animated:YES];
[self presentViewController:picker animated:YES completion:NULL];
}
Возможно, произошла ошибка, вызывающая это в iPad Mini? У меня нет других новых устройств, на которых я могу попробовать, поэтому я не уверен, что это проблема Mini или что-то большее. Любая помощь будет оценена по мере того, как я готов представить Apple, но я не хочу этого делать с ошибкой.
Я заметил, что проблема заключается в том, что выборщик равен NULL, когда я добавляю NSLog (@ "picker% @", picker) к методу. Поэтому по какой-то причине он не получает alloc/init'd должным образом. Как я уже сказал, для всех других устройств он создал объект и работает. – Bob