我正在尝试发送带有附加字符串的电子邮件。我能够在 StackOverflow 中找到相关链接:Adding additional string to message body (swift) .我需要帮助在电话号码后添加一个带有用户键入的文本消息的附加字符串。
例子:
姓名
电邮
电话号码
留言
这是我的代码:
@IBOutlet var nameField: UITextField!
@IBOutlet var emailAddressfield: UITextField!
@IBOutlet var phoneNumberfield: UITextField!
@IBOutlet var subjectfield: UITextField!
@IBOutlet weak var requestfield: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func Send(sender: Any) {
var SubjectText = "Prayer Request: "
SubjectText += subjectfield.text!
var _: [UITextField] = [nameField, phoneNumberfield, emailAddressfield]
let toRecipients = ["st.johnamechurch@att.net"]
let MessageBody = requestfield.text!
let mc: MFMailComposeViewController = MFMailComposeViewController()
mc.mailComposeDelegate = self
mc.setSubject(SubjectText)
mc.setMessageBody(MessageBody, isHTML: false)
mc.setToRecipients(toRecipients)
self.present(mc, animated: true, completion: nil)
}
func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {
switch result.rawValue {
case MFMailComposeResult.cancelled.rawValue:
print("Mail Cancelled")
case MFMailComposeResult.saved.rawValue:
print("sMail Saved")
case MFMailComposeResult.sent.rawValue:
print("Mail Sent")
case MFMailComposeResult.failed.rawValue:
print("Mail Failed: %@", [error?.localizedDescription])
default:
break
}
controller.dismiss(animated: true, completion: nil)
}
func dismissKeyboard(_ sender: AnyObject) {
self.resignFirstResponder()
}
最佳答案
您只需在消息正文字符串中附加信息,就像您对 subjectText
所做的一样。你的 send
函数应该是这样的:
@IBAction func send(sender: Any) {
let subjectText = "Prayer Request: " + subjectfield.text!
let toRecipients = ["st.johnamechurch@att.net"]
var messageBody = requestfield.text!
messageBody += "\nName: " + nameField.text!
messageBody += "\nPhone No.: " + phoneNumberfield.text!
messageBody += "\nEmail: " + emailAddressfield.text!
let mc: MFMailComposeViewController = MFMailComposeViewController()
mc.mailComposeDelegate = self
mc.setSubject(subjectText)
mc.setMessageBody(messageBody, isHTML: false)
mc.setToRecipients(toRecipients)
self.present(mc, animated: true, completion: nil)
}
关于ios - Xcode 添加多个字符串消息正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54864763/