iOS开发之邮件发送代码
2012-03-09 00:00
495 查看
邮件发送功能是由MessageUI Framework提供的,这个框架是iPhone sdk中最简单的框。由一个类、一个视图控制器,一个protocol组成。
一、创建视图控制器:
< class="brush:objc;gutter:false;">MFMailComposeViewController *mc = [[MFMailComposeViewController alloc] init]; mc.mailComposeDelegate = self;
二、设置邮件主题:
[mc setSubject:
@"
Hello, World!
"
];
三、设置收件人,收件人有三种:
1、设置主收件人
< class="brush:objc;gutter:false;">[mc setToRecipients:[NSArray arrayWithObjects:@"zhuqi0@126.com", "@dave@iphonedevbook.com", nil];
2、设置cc
[mc setCcRecipients:[NSArray arrayWithObject:
@"
zhuqil@163.com
"
]];
3、设置bcc
[mc setBccRecipients:[NSArray arrayWithObject:
@"
secret@gmail.com
"
]];
四、设置邮件主体,有两种格式。
一种是纯文本
[mc setMessageBody:
@"
Watson!!!\n\nCome here, I need you!
"
isHTML:NO];
一个是html格式
< class="brush:objc;gutter:false;"> [mc setMessageBody:@"<HTML><B>Hello, Joe!</B><BR/>What do you know?</HTML>" isHTML:YES];
五、添加附件
添加附件需要三个参数,一个是NSData类型的附件,一个是mime type,一个附件的名称。
NSString
*
path
=
[[NSBundle mainBundle] pathForResource:
@"
blood_orange
"
ofType:
@"
png
"
];
NSData
*
data
=
[NSData dataWithContentsOfFile:path];
[mc addAttachmentData:data mimeType:
@"
image/png
"
fileName:
@"
blood_orange
"
];
六、视图呈现
[self sentModalViewController:mc animated:YES];
[mc release];
七、视图控制器的委托方法
邮件视图控制器的委托方法包含在MFMailComposeViewControllerDelegate中,无论用户是否发送或取消发送,不论系统是否能够发送邮件,
方法 mailComposeController:didFinishWithResult:error: gets called都会被调用。
-
(
void
)mailComposeController:(MFMailComposeViewController
*
)controller
didFinishWithResult:(MFMailComposeResult)result
error:(NSError
*
)error {
switch
(result)
{
case
MFMailComposeResultCancelled:
NSLog(
@"
Mail send canceled...
"
);
break
;
case
MFMailComposeResultSaved:
NSLog(
@"
Mail saved...
"
);
break
;
case
MFMailComposeResultSent:
NSLog(
@"
Mail sent...
"
);
break
;
case
MFMailComposeResultFailed:
NSLog(
@"
Mail send errored: %@...
"
, [error localizedDescription]);
break
;
default
:
break
;
}
[self dismissModalViewControllerAnimated:YES];
}
原文链接:
http://www.cnblogs.com/zhuqil/archive/2011/07/21/2112816.html
一、创建视图控制器:
< class="brush:objc;gutter:false;">MFMailComposeViewController *mc = [[MFMailComposeViewController alloc] init]; mc.mailComposeDelegate = self;
二、设置邮件主题:
[mc setSubject:
@"
Hello, World!
"
];
三、设置收件人,收件人有三种:
1、设置主收件人
< class="brush:objc;gutter:false;">[mc setToRecipients:[NSArray arrayWithObjects:@"zhuqi0@126.com", "@dave@iphonedevbook.com", nil];
2、设置cc
[mc setCcRecipients:[NSArray arrayWithObject:
@"
zhuqil@163.com
"
]];
3、设置bcc
[mc setBccRecipients:[NSArray arrayWithObject:
@"
secret@gmail.com
"
]];
四、设置邮件主体,有两种格式。
一种是纯文本
[mc setMessageBody:
@"
Watson!!!\n\nCome here, I need you!
"
isHTML:NO];
一个是html格式
< class="brush:objc;gutter:false;"> [mc setMessageBody:@"<HTML><B>Hello, Joe!</B><BR/>What do you know?</HTML>" isHTML:YES];
五、添加附件
添加附件需要三个参数,一个是NSData类型的附件,一个是mime type,一个附件的名称。
NSString
*
path
=
[[NSBundle mainBundle] pathForResource:
@"
blood_orange
"
ofType:
@"
png
"
];
NSData
*
data
=
[NSData dataWithContentsOfFile:path];
[mc addAttachmentData:data mimeType:
@"
image/png
"
fileName:
@"
blood_orange
"
];
六、视图呈现
[self sentModalViewController:mc animated:YES];
[mc release];
七、视图控制器的委托方法
邮件视图控制器的委托方法包含在MFMailComposeViewControllerDelegate中,无论用户是否发送或取消发送,不论系统是否能够发送邮件,
方法 mailComposeController:didFinishWithResult:error: gets called都会被调用。
-
(
void
)mailComposeController:(MFMailComposeViewController
*
)controller
didFinishWithResult:(MFMailComposeResult)result
error:(NSError
*
)error {
switch
(result)
{
case
MFMailComposeResultCancelled:
NSLog(
@"
Mail send canceled...
"
);
break
;
case
MFMailComposeResultSaved:
NSLog(
@"
Mail saved...
"
);
break
;
case
MFMailComposeResultSent:
NSLog(
@"
Mail sent...
"
);
break
;
case
MFMailComposeResultFailed:
NSLog(
@"
Mail send errored: %@...
"
, [error localizedDescription]);
break
;
default
:
break
;
}
[self dismissModalViewControllerAnimated:YES];
}
原文链接:
http://www.cnblogs.com/zhuqil/archive/2011/07/21/2112816.html
相关文章推荐
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- (转载)iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发之邮件发送代码
- iOS开发中捕获Crash 发送Bug邮件
- iOS开发中程序崩溃邮件通知代码
- 在iOS开发中,经常需要调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的
- iOS开发中调用网址、拨打电话、发送短信、发送邮件
- iOS开发笔记--iOS后台发送邮件
- ios如何利用系统邮件发送反馈 代码
- iOS开发-邮件发送
- iOS开发—邮件发送第三方SKPSMTPMessage 新解
- iOS开发中程序崩溃邮件通知代码
- IOS开发-发送邮件(E-mail)方法整理合集(共3种)