开发者

Email in iphone

I am new to iphone. I going to implement Email functionality. I have to add contacts, which will appear on a button click event. Under the list of contacts, I choose a contact and it will be placed o开发者_JS百科n address textfield. How can i do this?

Can any one send me sample code?

Thanks in advance.


Use this code this will definitely work,

-(IBAction)send{
[self callMailComposer];
}

-(void)callMailComposer{
Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
if (mailClass != nil)
{
    // We must always check whether the current device is configured for     sending emails
    if ([mailClass canSendMail])
        [self displayComposerSheet];
    else
        [self launchMailAppOnDevice];
}

else
{
    [self launchMailAppOnDevice];
}
}

pragma mark -

pragma mark Compose Mail

pragma mark

// Displays an email composition interface inside the application. Populates all the Mail fields. 

 -(void)displayComposerSheet 
{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];


picker.mailComposeDelegate = self;
NSString *tosubject =@"";
[picker setSubject:tosubject];


// Set up recipients
[picker setCcRecipients:nil];   
[picker setBccRecipients:nil];

[picker setToRecipients:nil];



[picker setMessageBody:strNewsLink isHTML:NO];

[self presentModalViewController:picker animated:YES];

if(picker) [picker release];
if(picker) picker=nil;

}

// Dismisses the email composition interface when users tap Cancel or Send. Proceeds to update the message field with the result of the operation.

  - (void)mailComposeController:(MFMailComposeViewController*)controller                 didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
 {  
//message.hidden = NO;
// Notifies users about errors associated with the interface
switch (result)
{
    case MFMailComposeResultCancelled:
        [UIAlertView showAlertViewWithTitle:@"Canes Crunch" message:@"You have Cancelled of sending e-mail"];

        break;
    case MFMailComposeResultSaved:
        [UIAlertView showAlertViewWithTitle:@"Canes Crunch" message:@"Your e-mail has been saved successfully"];

        break;
    case MFMailComposeResultSent:
        [UIAlertView showAlertViewWithTitle:@"Canes Crunch" message:@"Your e-mail has been sent successfully"];

        break;
    case MFMailComposeResultFailed:
        [UIAlertView showAlertViewWithTitle:@"Canes Crunch" message:@"Failed to send e-mail"];

        break;
    default:
        [UIAlertView showAlertViewWithTitle:@"Canes Crunch" message:@"E-mail Not Sent"];

        break;
}
[self dismissModalViewControllerAnimated:YES];

}

pragma mark

pragma mark Workaround

pragma mark

// Launches the Mail application on the device.
-(void)launchMailAppOnDevice
{

NSString *recipients = @"mailto:?cc=&subject=";
NSString *body = @"&body=";
NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];

}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜