从您的应用程序发送一封带有 Swift 附件图像的电子邮件
Posted
技术标签:
【中文标题】从您的应用程序发送一封带有 Swift 附件图像的电子邮件【英文标题】:Sending an email from your app with an image attached in Swift 【发布时间】:2016-07-14 13:19:02 【问题描述】:我已经尝试了很多关于在您的应用中发送电子邮件的教程,但我所见过的没有一个显示如何使用它发送图像。我正在从 .WriteToFile 恢复图像,该图像设置为 UIImageView。我应该如何发送带有我的图片的电子邮件?
尼尔
【问题讨论】:
【参考方案1】:您需要在邮件中添加attachmentData
,对您的图片进行编码
在 NSData 中。这是一个示例,向您展示如何发送电子邮件
你的形象。我假设您有一个UIViewController
,您可以在其中放置函数sendMail
。
import MessageUI
class MyViewController: UIViewController, MFMailComposeViewControllerDelegate
// .... your stuff
func sendMail(imageView: UIImageView)
if MFMailComposeViewController.canSendMail()
let mail = MFMailComposeViewController()
mail.mailComposeDelegate = self;
mail.setCcRecipients(["yyyy@xxx.com"])
mail.setSubject("Your messagge")
mail.setMessageBody("Message body", ishtml: false)
let imageData: NSData = UIImagePNGRepresentation(imageView.image)!
mail.addAttachmentData(imageData, mimeType: "image/png", fileName: "imageName.png")
self.presentViewController(mail, animated: true, completion: nil)
要关闭 VC,请在您的 ViewController
中包含以下方法:
func mailComposeController(controller: MFMailComposeViewController,
didFinishWithResult result: MFMailComposeResult, error: NSError?)
controller.dismissViewControllerAnimated(true, completion: nil)
MFMailComposeViewControllerDelegate 中报告了此方法的文档。
【讨论】:
按下取消时我应该如何关闭邮件表单?截图:postimg.org/image/6pz5yv5lj 感谢 Adda_25 这帮了很多忙。以上是关于从您的应用程序发送一封带有 Swift 附件图像的电子邮件的主要内容,如果未能解决你的问题,请参考以下文章
使用带有 uuencode 的“sendmail”发送邮件,并带有主题
Android - 发送带有返回 0KB 大小的图像附件的电子邮件