,可以通过使用邮件库来实现。以下是一个基本的示例代码:
import Foundation
import MessageUI
func sendEmail() {
if MFMailComposeViewController.canSendMail() {
let mailComposer = MFMailComposeViewController()
mailComposer.mailComposeDelegate = self
mailComposer.setToRecipients(["recipient@example.com"])
mailComposer.setSubject("Hello")
let messageBody = """
<html>
<body>
<h1>This is a sample email</h1>
<<p>This is the body of the email.</p>
</body>
</html>
"""
mailComposer.setMessageBody(messageBody, isHTML: true)
// 添加循环正文
let loopContent = """
<p>This is a loop content:</p>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
"""
mailComposer.addAttachmentData(loopContent.data(using: .utf8)!, mimeType: "text/html", fileName: "loop_content.html")
if let viewController = UIApplication.shared.keyWindow?.rootViewController {
viewController.present(mailComposer, animated: true, completion: nil)
}
} else {
print("Cannot send email")
}
}
extension ViewController: MFMailComposeViewControllerDelegate {
func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {
controller.dismiss(animated: true, completion: nil)
}
}
这段代码使用了MFMailComposeViewController
类来创建邮件视图控制器,并设置收件人、主题和邮件正文。邮件正文使用了HTML格式,可以自定义样式和内容。循环正文被添加为附件,并指定了文件名和MIME类型。
请注意,为了使用MFMailComposeViewController
,你需要在项目中导入MessageUI
框架,并且在Info.plist
文件中添加MFMailComposeViewController
所需的权限描述。
这是一个基本的示例,你可以根据实际需求进行修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云