IOS发送电子邮件


简介

我们可以使用IOS设备中的电子邮件应用程序发送电子邮件。

实例步骤

1、创建一个简单的View based application

2、选择项目文件,然后选择目标,然后添加MessageUI.framework

3、在ViewController.xib中添加一个按钮,创建用于发送电子邮件的操作(action)

4、更新ViewController.h,如下所示

#import <UIKit/UIKit.h>
#import <MessageUI/MessageUI.h>

@interface ViewController : UIViewController<MFMailComposeViewControllerDelegate>
{
    MFMailComposeViewController *mailComposer;
}

-(IBAction)sendMail:(id)sender;

@end

5、如下所示,更新ViewController.m

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];   
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(void)sendMail:(id)sender{
    mailComposer = [[MFMailComposeViewController alloc]init];
    mailComposer.mailComposeDelegate = self;
    [mailComposer setSubject:@"Test mail"];
    [mailComposer setMessageBody:@"Testing message 
    for the test mail" isHTML:NO];
    [self presentModalViewController:mailComposer animated:YES];
}

#pragma mark - mail compose delegate
-(void)mailComposeController:(MFMailComposeViewController *)controller 
 didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{
   if (result) {
        NSLog(@"Result : %d",result);
    }
    if (error) {
        NSLog(@"Error : %@",error);
    }
    [self dismissModalViewControllerAnimated:YES];

}

@end

输出

当运行该应用程序,会看如下的输出结果

sendEmailOutput1

当点击send email发送按钮后,可以看到如下结果:

sendEmailOutput2

若文章对你有帮助,可以点赞或打赏支持我们。发布者:lyh会员,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/ios%e5%8f%91%e9%80%81%e7%94%b5%e5%ad%90%e9%82%ae%e4%bb%b6/

(0)
lyhlyh会员认证作者
上一篇 2023年 4月 1日 下午8:22
下一篇 2023年 4月 1日 下午8:51

相关推荐

  • openssl

    文章目录openssl补充说明实例 openssl 强大的安全套接字层密码库 补充说明 OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理…

    入门教程 2024年 3月 1日
  • sysctl

    文章目录sysctl补充说明语法选项参数实例配置sysctl sysctl 时动态地修改内核的运行参数 补充说明 sysctl命令 被用于在内核运行时动态地修改内核的运行参数,可用…

    入门教程 2024年 3月 11日
  • killall

    文章目录killall补充说明语法选项参数实例 killall 使用进程的名称来杀死一组进程 补充说明 killall命令 使用进程的名称来杀死进程,使用此指令可以杀死一组同名进程…

    入门教程 2023年 12月 19日
  • 基本语法

    文章目录C++ 程序结构实例编译 & 执行 C++ 程序C++ 中的分号 & 语句块C++ 标识符C++ 关键字三字符组C++ 中的空格 C++ 程序结构 让我们看…

    2024年 3月 18日
  • 32. panic 和 recover

    欢迎来到 Golang 系列教程的第 32 篇。 文章目录什么是 panic?什么时候应该使用 panic?panic 示例发生 panic 时的 deferrecoverpani…

    2023年 12月 5日
  • gzip

    文章目录gzip补充说明语法选项参数实例 gzip 用来压缩文件 补充说明 gzip命令 用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”…

    入门教程 2023年 12月 14日
  • tail

    tail 在屏幕上显示指定文件的末尾若干行 补充说明 tail命令 用于输入文件中的尾部内容。 默认在屏幕上显示指定文件的末尾10行。 处理多个文件时会在各个文件之前附加含有文件名…

    入门教程 2024年 3月 11日
  • test

    文章目录test概要主要用途参数文件操作符:字符串运算符:其他运算符:返回值例子注意 test 执行条件表达式。 概要 test [expr] 主要用途 执行条件表达式。 参数 文…

    入门教程 2024年 3月 11日
  • 前言

    C++ 是一种高级语言,它是由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言。…

    2024年 3月 18日
  • Java Number & Math 类

    一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。 文章目录实例Test.java 文件代码:Java Math 类Test…

    2023年 3月 4日
Translate »