我在我的应用程序中使用MFMailComposeViewController发送电子邮件。但是视图没有显示,只有上方的SEND和CANCEL按钮显示出来。
这是点击“Email to Subscribe”按钮后显示的视图截图。 我已经检查了所有相关代码。我添加了“MessageUI”框架并导入了它。
我用了以下代码:
我无法理解这个问题的原因。
谢谢。
这是点击“Email to Subscribe”按钮后显示的视图截图。 我已经检查了所有相关代码。我添加了“MessageUI”框架并导入了它。
MessageUI/MessageUI.h , MessageUI/MFMailComposeViewController.h
我用了以下代码:
我使用了以下代码:
- (void)viewWillAppear:(BOOL)animated {
[self.view setFrame:CGRectMake(0, 62, 320, 418)];
[APPDELEGATE.window addSubview:self.view];
[self.navigationController.navigationBar setHidden:NO];
self.navigationItem.title=@"Free Subscription";
[super viewWillAppear:animated]; }
-(void)viewWillDisappear:(BOOL)animated {
[self.view removeFromSuperview];
[super viewWillDisappear:animated]; }
-(IBAction)btnEmailPressed {
MFMailComposeViewController* Apicker = [[MFMailComposeViewController alloc] init];
if (Apicker != nil)
{
[Apicker setSubject:@"Free Subscription"];
[Apicker setMessageBody:@" " isHTML:NO];
NSArray *toRecipients = [NSArray arrayWithObjects:@"info@xyz.com", nil];
[Apicker setToRecipients:toRecipients];
Apicker.mailComposeDelegate = self;
if([MFMailComposeViewController canSendMail])
{
[self presentModalViewController:Apicker animated:YES];
}
else
{
}
[Apicker release];
} }
-(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError
*)error{
NSString *message;
switch (result) {
case MFMailComposeResultCancelled:
message =@"You have canceled your email.";
break;
case MFMailComposeResultFailed:
message=@"Your email is failed";
break;
case MFMailComposeResultSent:
message=@"Your email was successfully sent.";
break;
case MFMailComposeResultSaved:
message=@" Your email has been saved";
break;
default:
message=@" Your email is not send";
break;
}
UIAlertView *alt=[[UIAlertView alloc]initWithTitle:@"" message:message delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
[alt show];
[alt release];
[self dismissModalViewControllerAnimated:YES];
}
我无法理解这个问题的原因。
谢谢。