我正在尝试创建一个负责使用 MFMailComposeViewController 发送电子邮件的类,以便我可以从我的应用程序中的差异视图控件中使用此方法。
这个类称为 apoio。
在这个类中有下面的方法。
-(void) enviarGraficoPorEmail: (NSData*) _pdfGrafico {
if (![MFMailComposeViewController canSendMail]) {
// show message box for user that SMS cannot be sent
} else {
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"Dashboard"];
[picker addAttachmentData:_pdfGrafico mimeType:@"application/pdf" fileName:@"grafico.pdf"];
NSString *emailBody = @"Anexando gráfico";
[picker setMessageBody:emailBody isHTML:NO];
[self presentModalViewController:picker animated:YES];
}
}
我有另一个视图控制器,它在用户单击电子邮件按钮时调用 apoio 方法。就是下面这段代码
-(IBAction) enviarGraficoPorEmail {
Apoio *apoio = [[Apoio alloc] init];
[apoio enviarGraficoPorEmail:[barChart dataForPDFRepresentationOfLayer]];
}
但我不知道为什么,电子邮件视图没有出现。该方法被称为正确的,因为我调试过等等。
如果我将代码从 apoio 方法复制到 enviarGraficoPorEmail 方法,则一切正常。
但我不想这样做,因为我会从其他视图控制器发送电子邮件。
我究竟做错了什么 ??