android - 如何将文本格式化为电子邮件客户端的电子邮件正文中的表格

时间:2012-08-28 07:40:22

标签: android email-client

我必须将文本格式化为电子邮件客户端的电子邮件正文中的表格。但我读到某处android没有 支持  的<表> 标记。还有其他选择吗?我尝试了很多,但我仍然没有找到任何好的解决方案。请任何人帮助我。

code

String body =“< table border =”+“1”+“>< tr>< td> row 1,cell 1< / td>”+         “< td>第1行,第2列”+         “< / tr>”+         “< tr>”+         “< td>第2行,单元格1< / td>”+         “< td>第2行,第2行< / td>”+         “< / tr>”+         “< / table>”;

final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("text/html");
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject.getText());
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(body).toString());                    
startActivity(Intent.createChooser(emailIntent, "Email:"));

实际输出是

enter image description here

但我的预期输出类似于以下内容:

enter image description here

1 个答案:

答案 0 :(得分:2)

试试这个:

How to send HTML email

好的,因为以上不起作用试试这个:

http://www.edumobile.org/android/android-programming-tutorials/how-to-send-an-email/

您的示例中的代码适用于没有表的任何内容。我以为它可能会被迫,但我在这里碰壁了。

请参阅:Sending html email in android using <table>, etc. - is there really no relatively built-in Intent way?

也许这可以解决它: Display HTML Table in webview

或许你可以在你的活动中强制执行这样的事情(根据你的目的进行调整):

WebView webview = new WebView(this); setContentView(webview); String yourHtml = "<html><body><table>...</table></body></html>"; webview.loadData(yourHtml , "text/html", "utf-8");