Я разрабатываю приложение для iOS 7 и использовал MFMailComposerViewController
.Как использовать MFMailComposerViewController на iOS 7?
Я пробовал все, кроме dismissViewController:withAnimated
не работает.
иногда класс автоматически вызывает делегат сам по себе, когда он сначала отображает viewController
, используя метод presentViewCOntroller:withAnimated:completion
.
Мое приложение основано на навигации, поэтому я думаю, что проблема связана только с UINavigationController
.
-(void)sendMail{
if ([MFMailComposeViewController canSendMail]) {
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"Hello from California!"];
// Set up recipients
NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"];
NSArray *ccRecipients = [NSArray arrayWithObjects:@"[email protected]", @"[email protected]", nil];
NSArray *bccRecipients = [NSArray arrayWithObject:@"[email protected]"];
[picker setToRecipients:toRecipients];
[picker setCcRecipients:ccRecipients];
[picker setBccRecipients:bccRecipients];
// Fill out the email body text
NSMutableString *emailBody =[NSMutableString stringWithString: @"<table border=1 align=\"center\"><tr><th>EventDate</th><th>EventDay</th><th>EventTime</th><th>Speaker</th><th>topic</th></tr>"];
for (int i=0; i<5; i++) {
NSString *eventDate=[NSString stringWithFormat:@"<tr><td>%@</td>",@"12/11"];
NSString *eventDay=[NSString stringWithFormat:@"<td>%@</td>",@"Sunday"];
NSString *eventTime=[NSString stringWithFormat:@"<td>%@</td>",@"12:10 pm"];
NSString *eventSpeaker=[NSString stringWithFormat:@"<td>%@</td>",@"RajVeer"];
NSString *eventTopic=[NSString stringWithFormat:@"<td>%@</td>",@"nano-technology"];
NSString *dataString=[NSString stringWithFormat:@"%@%@%@%@%@</tr>",eventDate,eventDay,eventTime,eventSpeaker,eventTopic];
[emailBody appendString:dataString];
}
NSString *[email protected]"</table>";
[emailBody appendString:lastTable];
NSLog(@"%@",emailBody);
[picker setMessageBody:emailBody isHTML:YES];
[self presentViewController:picker animated:YES completion:NULL];
}
Покажите нам код, который вы используете, чтобы представить и отклонить контроллер представления. –
На iOS 7 он работает так, как он работал на более ранних версиях iOS (только что протестирован). Это должно быть проблемой с вашим кодом. –