【发布时间】:2013-02-12 06:27:56
【问题描述】:
我正在开发一个可在所有部署目标模拟器 (5.0-6.1) 以及我的 iPhone 3GS、4、4S 和第 2 代 iPad 上运行的应用程序。我今天有机会尝试在 iPad Mini 上运行它。我在任何地方工作,除非我尝试使用 MFMailComposeViewController 对象发送电子邮件,这会导致它崩溃并出现异常。
我直接使用 MailComposer 示例项目中的代码,但它在调用 presentModalViewController:animated: 时总是崩溃。所以我尝试了 presentViewController:animated:completion: 因为另一种方法已被弃用,但它仍然不起作用。
我链接到 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:@"info@foo.bar"];
[picker setToRecipients:toRecipients];
// [self presentModalViewController:picker animated:YES];
[self presentViewController:picker animated:YES completion:NULL];
}
iPad Mini 中是否存在导致此问题的错误?我没有任何其他可以试用的新设备,所以我不确定它是小问题还是更大的问题。任何帮助都将不胜感激,因为我已准备好提交给 Apple,但我肯定不想因为崩溃的错误而这样做。
【问题讨论】:
-
我注意到,当我将 NSLog(@"picker %@",picker) 添加到方法时,问题似乎是选择器为 NULL。所以由于某种原因,它没有得到正确的分配/初始化。正如我所说,对于所有其他设备,它创建了对象并且可以工作。
标签: ios segue mfmailcomposeviewcontroller ipad-mini