我正在尝试使用MFMailComposeViewController
类将一组双打附加到邮件中。到目前为止,这是我在ViewController
类中的代码:
func prepareMail(data:[Double]) {
// Compose the mail
let mailComposer = MFMailComposeViewController()
mailComposer.mailComposeDelegate = self
mailComposer.setToRecipients(["mail@mail.com"])
mailComposer.setSubject("subject")
mailComposer.setMessageBody("Hello ", isHTML: false)
// Name data files (accelerometer + label)
let fileName = "file"
if let dataToAttach = data {
//Attach File
mailComposer.addAttachmentData(dataToAttach, mimeType: "text/plain", fileName: "\(fileName)")
self.present(mailComposer, animated: true, completion: nil)
}
}
}
此代码提出以下消息:
条件绑定的初始化程序必须具有Optional类型,而不是 [双]
所以这是我的想法:
mimetype
发送它。我在IANA mime Types中探讨了一些选项,但我对此并不熟悉,也不知道从哪里开始。我不知道该怎么办。
答案 0 :(得分:1)
您的问题就在这一行[{1}},因为您的数据为if let dataToAttach = data
且不能为[Double]
,因此您无需检查nil
,或者您可以将参数类型更改为nil
以避免此编译器错误。
取而代之:
[Double]?
由此:
if let dataToAttach = data {
//Attach File
mailComposer.addAttachmentData(dataToAttach, mimeType: "text/plain", fileName: "\(fileNames[i])")
self.present(mailComposer, animated: true, completion: nil)
}
就够了。