In App Email
In this tutorial i will be showing you how to directly email from your app Features:
- 1 Round Rect Button
In app emailing is a great feature for any developer and can be used to gather instant feedback from the customer or even a way to share your apps content improving the app and reaching a higher audience
The Code
| Play the video to get a step by step walkthrough and all code can be copy and pasted |
1.新建立一个项目,view based application(with storyboard.ARC)
2.需要引入UIMessage Library (Build Phases => Link Binary With Libraries => +(添加) => MessageUI.framework(可以搜索查找))
3.编辑ViewController.h文件
#import <UIKit/UIKit.h> #import <MessageUI/MessageUI.h> @interface ViewController : UIViewController <MFMailComposeViewControllerDelegate> -(IBAction)sendMail:(id)sender; @end
4.在MainStoryboard.storyboard文件中添加一个Round Rect Button ,关联到sendMail 函数。
5.在ViewController.m文件中添加如下方法
-(IBAction)sendMail:(id)sender
{
if ([MFMailComposeViewController canSendMail])
{
MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
mail.mailComposeDelegate = self;
[mail setSubject:@"Hi here is Subject!"];
NSArray *toRecipients = [NSArray arrayWithObjects:@"justcoding@gmail.com", nil];
[mail setToRecipients:toRecipients];
[mail setCcRecipients:toRecipients];
NSString *emailBody = @"This is a test email !";
[mail setMessageBody:emailBody isHTML:NO];
mail.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:mail animated:YES];
}
else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"ERROR" message:@"Email is not supported on your device" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles: nil];
[alert show];
}
}
-(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
switch (result)
{
case MFMailComposeResultCancelled:
NSLog(@"Cancelled");
break;
case MFMailComposeResultSaved:
NSLog(@"Message saved in drafts folder");
break;
case MFMailComposeResultSent:
NSLog(@"Message is sent");
break;
case MFMailComposeResultFailed:
NSLog(@"Message not sent due to error");
break;
default:
NSLog(@"Mail not sent");
break;
}
[self dismissModalViewControllerAnimated:YES];
}
视频地址:http://www.youtube.com/watch?v=ECkJh2mnFc8&feature=player_embedded
本文介绍如何在iOS应用中实现直接发送邮件的功能,包括引入必要的框架、创建按钮并关联发送邮件的方法,以及处理邮件发送结果。
2466

被折叠的 条评论
为什么被折叠?



