На iOS 3.0 і пізніших версіях ви повинні використовувати MFMailComposeViewController
клас та MFMailComposeViewControllerDelegate
протокол, які затягнуті в рамку MessageUI.
Спочатку додайте фреймворк та імпортуйте:
#import <MessageUI/MFMailComposeViewController.h>
Потім, щоб надіслати повідомлення:
MFMailComposeViewController* controller = [[MFMailComposeViewController alloc] init];
controller.mailComposeDelegate = self;
[controller setSubject:@"My Subject"];
[controller setMessageBody:@"Hello there." isHTML:NO];
if (controller) [self presentModalViewController:controller animated:YES];
[controller release];
Тоді користувач виконує роботу, і ви отримуєте зворотний зворот делегата:
- (void)mailComposeController:(MFMailComposeViewController*)controller
didFinishWithResult:(MFMailComposeResult)result
error:(NSError*)error;
{
if (result == MFMailComposeResultSent) {
NSLog(@"It's away!");
}
[self dismissModalViewControllerAnimated:YES];
}
Не забудьте перевірити, чи пристрій налаштовано для надсилання електронної пошти:
if ([MFMailComposeViewController canSendMail]) {
// Show the composer
} else {
// Handle the error
}