导入系统框架:
在需要的地方导入头文件:
#import <MessageUI/MessageUI.h>
然后遵守协议(邮件和信息)
<
MFMailComposeViewControllerDelegate,
MFMessageComposeViewControllerDelegate
>
创建2个按钮:(发送邮件和信息)
UIButton *emailBtn = [UIButton buttonWithType:UIButtonTypeCustom]; emailBtn.frame = CGRectMake(100, 100, 100, 100); emailBtn.backgroundColor = [UIColor purpleColor]; [self.view addSubview:emailBtn]; [emailBtn addTarget:self action:@selector(emailButtonAction:) forControlEvents:UIControlEventTouchUpInside]; UIButton *msgBtn = [UIButton buttonWithType:UIButtonTypeCustom]; msgBtn.frame = CGRectMake(100, 300, 100, 100); msgBtn.backgroundColor = [UIColor purpleColor]; [self.view addSubview:msgBtn]; [msgBtn addTarget:self action:@selector(msgButtonAction:) forControlEvents:UIControlEventTouchUpInside];
按钮实现方法如下:
#pragma mark -- 发送邮件按钮实现方法 - (void)emailButtonAction:(UIButton *) sender { // 判断是否可以发送邮件 if ([MFMailComposeViewController canSendMail]) { // 创建邮件视图控制器 MFMailComposeViewController *picker =[[MFMailComposeViewController alloc] init]; picker.mailComposeDelegate = self; // 设置代理 [picker setSubject:@"haha"]; // 设置主题 [picker setToRecipients:@[@"898@qq.com"]]; // 设置收件人 可以多人发送 [picker setCcRecipients:@[@"794@qq.com"]]; // 设置抄送对象 同样可以多人发送 [picker setMessageBody:@"哈哈哈哈哈" isHTML:YES]; // 设置发送的内容 // 推出视图 [self presentViewController:picker animated:YES completion:nil]; } else { NSLog(@"无法发送短信"); } } #pragma mark -- 实现邮件协议方法 - (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error { // 判断发送状态 switch (result) { case MFMailComposeResultCancelled: NSLog(@"取消发送"); break; case MFMailComposeResultFailed: NSLog(@"邮件发送失败"); NSLog(@"错误信息:%@", error); break; case MFMailComposeResultSaved: NSLog(@"邮件保存"); break; case MFMailComposeResultSent: NSLog(@"邮件发送成功"); break; default: break; } [self dismissViewControllerAnimated:YES completion:nil]; } #pragma mark -- 发送信息按钮实现方法 - (void)msgButtonAction:(UIButton *) sender { // 判断是否可以发送短信 if ([MFMessageComposeViewController canSendText]) { // 可以发送短信 // 创建短信视图控制器 MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init]; picker.messageComposeDelegate = self; // 设置代理 picker.recipients = @[@"183310000747"]; // 设置收信人 收件人是个数组,所有我们可以实现群发 picker.body = @"这是一条短信息"; // 设置信息内容 // 打开短信功能 [picker presentViewController:picker animated:YES completion:nil]; } else { NSLog(@"不可以发送短信"); } } #pragma mark - MFMessageComposeViewControllerDelegate Methods - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result { // 判断短信发送的状态 switch (result) { case MessageComposeResultCancelled: NSLog(@"取消发送"); break; case MessageComposeResultFailed: NSLog(@"发送失败"); break; case MessageComposeResultSent: NSLog(@"发送成功"); break; default: break; } // 关闭发送短息的页面 [self dismissViewControllerAnimated:YES completion:nil]; }
OK......