Моя программа выглядит следующим образом. Я получил часть кода из другого вопроса о Stackoverflow. Это прекрасно работает при просмотре электронной почты на телефоне, но не при использовании компьютера. Посмотрите код ниже для того, как это выглядит. Любые предложения?
Редактировать: Кажется, это может быть вещь Gmail. Мой аккаунт Godaddy сработал, а Yahoo ничего не показал. Не должно нравиться электронное письмо в теле.
Edit2: игнорировать этот пост. Я изменил его на вложение, и все работает намного лучше. Спасибо за просмотр, и я скоро это удалю.
@IBAction func SubmitIssue(_ sender: UIButton) {
let IssueSubjectText = issueLabel.text ?? ""
var IssueBodytext = ""
let IssueComposer: MFMailComposeViewController = MFMailComposeViewController()
let sendIssueTo = [villageEmail]
if issueLocation?.isHidden == false {
IssueBodytext += "<html><body><p>Location: " + (issueLocation?.text ?? "") + "</p></body></html>"
}
IssueBodytext += issueDescription.text + "</p></body></html>"
IssueBodytext += UserDefaults.standard.string(forKey: "username")! + "</p></body></html>"
IssueBodytext += UserDefaults.standard.string(forKey: "phonenumber")! + "</p></body></html>"
if issueImage.isHidden == false {
let image = issueImage.image
let imageData = image!.pngData() ?? nil
let base64String = imageData?.base64EncodedString() ?? ""
IssueBodytext += "<html><body><p><b><img src='data:image/png;base64,\(String(describing: base64String) )' width='auto' height='50%'></b></p></body></html>"
}
IssueComposer.mailComposeDelegate = self
IssueComposer.setSubject(IssueSubjectText)
IssueComposer.setMessageBody(IssueBodytext, isHTML: true)
IssueComposer.setToRecipients(sendIssueTo)
self.present(IssueComposer, animated: true, completion: nil)
}```
On Computer, the photo looks like this:
<img src='data:image/png;base64,iVBORw0KG....(and on for a while...)