EmailSend Application In iPhone

In this application we will see how to Email Send in iPhone. So let see how it will worked.

My last post you can find out from here (attached the previous post link)

Step 1: Open the Xcode, Create a new project using View Base application. Give the application “EmailSend”.

Step 2: Xcode automatically creates the directory structure and adds essential frameworks to it. You can explore the directory structure to check out the content of the directory.

Step 3: Expand classes and notice Interface Builder created the ViewController class for you. Expand Resources and notice the template generated a separate nib, EmailSendViewController.xib for the EmailSend application.

Step 4: We need to add MessageUI.framework in the application.

Step 5: Open the EmailSendViewController.h file and make the following changes:


#import <uikit/UIKit.h>
#import <messageUI/MessageUI.h>
@interface EmailSendViewController : UIViewController
- (IBAction)SendMail:(id)sender;



Step 6: Double click the EmailSendViewController.xib file and open it to the interface Builder. Drag the round rect button from the library and place it to the View window. Now select the button and bring up Connection Inspector and connect Touch Up Inside to the File’s Owner icon and select SendMail: method. Now Save the .xib file, close it and go back to the Xcode.

Step 7: Open the AlertViewViewController.m file and make the following changes:


#import "EmailSendViewController.h"
@implementation EmailSendViewController
- (void)dealloc
[super dealloc];
- (void)didReceiveMemoryWarning
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
#pragma mark - View lifecycle
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
[super viewDidLoad];
- (void)viewDidUnload
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
- (IBAction)SendMail:(id)sender
if ([MFMailComposeViewController canSendMail])
MFMailComposeViewController *mailer = [[MFMailComposeViewController alloc] init];
mailer.mailComposeDelegate = self;
[mailer setSubject:@"A Message from iPhone"];
NSArray *toRecipients = [NSArray arrayWithObjects:@"", @"", nil];
[mailer setToRecipients:toRecipients];
NSString *emailBody = @"Have you Nice Day";
[mailer setMessageBody:emailBody isHTML:NO];
// only for iPad
// mailer.modalPresentationStyle = UIModalPresentationPageSheet;
[self presentModalViewController:mailer animated:YES];
[mailer release];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Failure"
message:@"Your device doesn't support the composer sheet"
otherButtonTitles: nil];
[alert show];
[alert release];
#pragma mark - MFMailComposeController delegate
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:
(MFMailComposeResult)result error:(NSError*)error
switch (result)
case MFMailComposeResultCancelled:
NSLog(@"Mail cancelled");
case MFMailComposeResultSaved:
NSLog(@"Mail saved");
case MFMailComposeResultSent:
NSLog(@"Mail send");
case MFMailComposeResultFailed:
NSLog(@"Mail failed");
NSLog(@"Mail not sent");
[self dismissModalViewControllerAnimated:YES];



Step 8: Now Compile and run the application on the Simulator.

Leave a Comment:

EmailSend Application in iPhone | iPhone / iPod / iPad Software developing says January 3, 2012

[…] iPhone Tutorial | iPhone iOS4 iPad SDK Development & Programming Blog This entry was posted in IOS Development and tagged Application, EmailSend, iPhone by sniuff. Bookmark the permalink. […]

Shriram Kadam says January 5, 2012

This is Shriram. I have join the iphone Training.I am FRESHER in iphone ,so please I need to your support to solve the every one to complete earlyer this training?& tl me What is features in iphone via e-mail? please.
Thanks For Your Support.


Muthu says April 20, 2012

I have an error , using this code.

Error is: ‘release’ is unavailable: not available in reference counting mode & ARC forbids explicit message send of ‘release’.

20 Best iPhone Apps Development Tutorials - Free IT Pakistan says December 8, 2012

[…] EmailSend Application in iPhone […]

75+ Mobile App Development Tutorials – Start Your App Success Today! says April 9, 2013

[…] EmailSend Application in iPhone – MORE INFO […]

wilson says October 17, 2013

this code is generated the old version of ios . In latest version it will depreciated so no need to release the memory of the object is must if you create the project with ARC.

    Vishy says November 9, 2013

    Hi wilson, and thanks for your comment.

    You are correct: this blog was initially prepared before ARC was in place. We are in the process of updating our blogs and will be releasing a new series of four blogs a month starting this month.

    Stay tuned!

Add Your Reply