2010-05-18 116 views
1

如何使用MFMailComposeViewController發送電子郵件的HTML和回退純文本版本? API有一個將消息主體設置爲/或的方法,但不能指定兩者。我見過其他應用程序(如Doodle Jump),所以它一定是可以的。使用MFMailComposeViewController發送電子郵件的HTML和純文本版本

+0

在塗鴉跳躍的電子郵件的仔細檢查,它看起來像MFMailComposeViewController實際上通過剝離HTML來自動創建純文本電子郵件。沒關係,如果我可以創建一個純文本格式的HTML版本。但是,它確實會導致一些奇怪的文本,例如「Click Here」類型的不是鏈接的鏈接。 – 2010-05-18 14:20:19

+0

哈哈。你知道嗎 - 我*昨天買了* doodlejump只是爲了檢查它是否真的使用MFMailComposer。我沒有考慮檢查輸出郵件。太忙了! – Andiih 2010-05-20 13:36:21

回答

1

經過大量調查,無論是在代碼和使用谷歌,我得出的結論是,這是不可能通過MFMailComposeViewController做到這一點。我會愛一個人來證明我錯了,所以如果你發現其他問題,我會很樂意投你的答案。

0

我只能提供猜測,因爲我沒有嘗試過。

該文檔說調用setMessageBody:isHTML:替換上一個主體。它值得嘗試兩個電話 - 一個是isHTML:YES,另一個是NO,以防萬一這些文檔有問題:但這不太可能。

如果邊界是恆定的(我希望是這樣),我會說這樣做的方式是將它作爲HTML發送並將純文本部分僞造到最後。您需要發送一封HTML電子郵件或3,並檢查邊界是否爲不變,然後抓住它。然後追加

 
------=_NextPart_111_2222_11223344.aabbccdd 
Content-Type: text/plain; 
charset="iso-8859-1" 
Content-Transfer-Encoding: 8bit 
Plain text content 

用真正的邊界替換NextPart的東西。 如果邊界不一致,那麼我不知道:-)值得一試嗎?

+0

這是一個合理的猜測,我已經研究了兩種方法。第二個調用只是替換消息正文。邊界也是由郵件編輯器生成的,並且不是常量,所以我不能改變它。謝謝你的回答! – 2010-05-20 12:31:41

+0

恥辱 - 這是值得一試! – Andiih 2010-05-20 13:33:40

0

這是我在做什麼,輸出是好的,我不能夠連接圖像,否則我會HV所示你們

NSString *emailBody = @"<HTML><BODY><B>It is raining in sunny California!</B><table><tr><td>row1</td><td>row2</td></tr><tr><td>row3</td><td><b>row4</b></td></tr></table></BODY></HTML>"; 
    [picker setMessageBody:emailBody isHTML:YES]; 
相關問題