iOS12系统应用发送邮件中的附件
iOS12系统应用发送邮件中的附件,如果发送邮件的内容很多,或者包含文档、图片等,可以以附件的形式进行发送。此时需要使用addAttachmentData(_:mimeType:fileName:)方法,其语法形式如下:
func addAttachmentData(_ attachment: Data,
mimeType: String,
fileName filename: String)
其中,参数说明如下:
- attachment:要附加的数据。
- mimeType:指定数据的MIME类型,例如JPEG图像的MIME类型是image/jpeg。此参数可以为nil。
- filename:与数据关联的首选文件名。这个名称是传输到目标时应用于文件的默认名称。
【示例3-2】下面发送一封带图片附件的邮件。代码如下:
@IBAction func addAttachment(_ sender: Any) {
let composeVC = MFMailComposeViewController()
composeVC.mailComposeDelegate = self
composeVC.setToRecipients(["address@example.com"])
//实现图片附件的添加
let addPic=UIImage(named: "image.jpg")
let imageData=addPic!.pngData()
composeVC.addAttachmentData(imageData!, mimeType: "", fileName: "landscapePicture.jpg")
self.present(composeVC, animated: true, completion: nil)
}
运行程序,轻拍按钮,会打开MFMailComposeViewController提供的标准邮件界面,如图3.2所示。