Very short snippet: comporre mail all’interno di un’applicazione iPhone, iPod o iPad

Per comporre email all’interno di una applicazione iPhone/iPod è sufficiente aggiungere il framework MessageUI. Nel nostro controller inserire l’inclusione del framework e adottare il protocolo MFMailComposeViewControllerDelegate:

1
2
3
4
#import <MessageUI/MessageUI.h>
...

@interface myController : UIViewController <MFMailComposeViewControllerDelegate>

Creare un metodo tipo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
- (void)openMailComposer {
 
    MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
    mail.mailComposeDelegate = self;

    // Verifico che il dispositivo sia in grado di inviare Mail
    if([MFMailComposeViewController canSendMail]) {
        [mail setToRecipients:[NSArray arrayWithObjects: @"m.rossi@abc.com", nil]];
        [mail setSubject:@"Oggetto Mail preimpostato"];
        [mail setMessageBody:@"" isHTML:NO]; // YES per HTML
        [self presentModalViewController:mail animated:YES];
     }
    [mail release];
}

L’esito verrà supportato grazie all’adozione del protocollo MFMailComposeViewControllerDelegate, ad esempio:

1
2
3
4
5
6
7
8
- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{
 
    [self dismissModalViewControllerAnimated:YES];
 
    if (result == MFMailComposeResultFailed) {
        // Qualcosa è andato storto... mostrare un UIAlert ad esempio...
    }
}

Non ci sono commenti per questo Post

Lascia un commento

TAG XHTML PERMESSI: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERIMENTO CODICE:
<pre></pre> // blocco generico
                   <code></code> // blocco generico
                   [cc_actionscript][/cc_actionscript] // Actionscript
                   [cc_actionscript3][/cc_actionscript3] // Actionscript 3
                   [cc_css][/cc_css] // CSS Style Sheet
                   [cc_html][/cc_html] // HTML
                   [cc_js][/cc_js] // Javascript
                   [cc_objc][/cc_objc] // Objective-C
                   [cc_php][/cc_objc] // PHP
                   [cc_sql][/cc_sql] // SQL