7

我必须在电子邮件客户端的电子邮件正文中将文本格式化为表格。但我在某个地方读到了 android 不
支持 <table>标签。有没有其他选择可以做到这一点?我尝试了很多,但我仍然没有找到任何好的解决方案。请任何人都可以帮助我。

code

String body = "<table border="+"1"+"><tr><td>第1行,第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:"));

实际输出是这个

在此处输入图像描述

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

在此处输入图像描述

4

1 回答 1

2

试试这个:

如何发送 HTML 电子邮件

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

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

您示例中的代码对于没有表格的任何内容都可以正常工作。我认为这可能是被迫的,但我在这里碰壁了。

见:在android中使用<table>等发送html邮件——真的没有相对内置的Intent方式吗?

也许这可以解决它: 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"); 
于 2012-08-28T07:45:59.343 回答