我在显示发送电子邮件的模式视图时遇到问题(MFMailComposeViewController)。我试图通过在初始表视图中选择一个单元格,从一个详细的视图中显示这个模态视图。我的问题是虽然MFMailComposeViewController确实显示,但我没有得到我通常使用MFMailComposeViewController视图的发送和取消按钮。我只是在导航栏中看到了详细视图的“后退”按钮。
我的详细视图是UIViewController的子类,符合MFMailComposeViewControllerDelegate,UINavigationControllerDelegate协议:
我发送电子邮件的方法是:
-(void)sendEmail {
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.mailComposeDelegate = self;
if ([MFMailComposeViewController canSendMail]) {
[mailComposer setToRecipients:[NSArray arrayWithObjects:@"test@gmail.com",nil]];
[mailComposer setSubject:@"Subjecy"];
[mailComposer setMessageBody:@"Body" isHTML:NO];
[self presentModalViewController:mailComposer animated:YES];
}
[mailComposer release];
}
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error
{
[self dismissModalViewControllerAnimated:YES];
if (result == MFMailComposeResultFailed) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message Failed" message:@"Your message failed to send" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
}
非常感谢您的帮助。
答案 0 :(得分:0)
在iPad上显示电子邮件窗口时,我遇到了类似的问题 [self presentModalViewController:mailComposer animated:YES];
“发送”和“取消”按钮被部分切断,因为整个窗口向上移动了大约20或30个像素。奇怪的是,当主页按钮位于底部时,这只发生在纵向模式中。
解决方案是在MainWindow.XIB中将主窗口大小设置为iPad全屏 默认设置为“无”。
富