Hoe e-mail te vullen met To en Onderwerp in iPhone?

Ik heb een knop in mijn app genaamd contacteer ons! Is er een manier om de Eamil-client te openen op een iPhone gevuld met To en het onderwerp dat ik geef?

0

3 antwoord

U wilt de MFMailComposeViewController klas. Hier is het relevante deel van Apple's Voorbeeld van MailComposer :

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;

[picker setSubject:@"Hello from California!"];

// Set up recipients
NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"]; 
[picker setToRecipients:toRecipients];

[self presentModalViewController:picker animated:YES];
[picker release];

In het voorbeeld van MailComposer ziet u ook hoe u de externe e-mailapp opent:

NSString *recipients = @"mailto:[email protected]&subject=Hello from California!";
NSString *body = @"&body=It is raining in sunny California!";

NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
1
toegevoegd
Dankjewel voor je hulp.
toegevoegd de auteur HardCode, de bron
Zorg ervoor dat u eerst [MFMailComposeViewController canSendMail] test.
toegevoegd de auteur picciano, de bron

Bekijk MFMailComposeViewController . U kunt het onderwerp, het veld en zelfs de inhoud vullen met HTML.

0
toegevoegd

Natuurlijk kan je dat.

- (void)emailExport:(NSString *)filePath
{
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;

   //Set the subject of email
    [picker setSubject:@"My desired subject"];

   //Add email addresses
   //Notice three sections: "to" "cc" and "bcc"   

    NSString *valueForEmail = @"[email protected]";
    NSString *valueForCCEmail = @"myCcEmail";
    if( valueForEmail == nil ||  [valueForEmail isEqualToString:@""])
    {
        UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"Please set an email address before sending a time entry!" message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];        

        return;
    }
    else {
        [picker setToRecipients:[NSArray arrayWithObjects:valueForEmail, nil]];
    }

    if(valueForCCEmail != nil || ![valueForCCEmail isEqualToString:@""])
    {
        [picker setCcRecipients:[NSArray arrayWithObjects:valueForCCEmail, nil]];
    }

   //Fill out the email body text
    NSString *emailBody = @"My email body text.";

   //This is not an HTML formatted email
    [picker setMessageBody:emailBody isHTML:NO];

   //Show email view  
    [self presentModalViewController:picker animated:YES];

   //Release picker
    [picker release];
}
0
toegevoegd