7

メールクライアントのメール本文でテキストをテーブルとしてフォーマットする必要があります。しかし、アンドロイドが< table>タグ
をサポート していない場所を読みました。これを行うための他の選択肢はありますか?私はたくさん試しましたが、まだ良い解決策が見つかりません。誰でも私を助けてください。

code

文字列本体 = "< 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/

あなたの例のコードは、テーブルがなくても問題なく機能します。無理やりでもいいと思ったのですが、ここで壁にぶち当たりました。

参照: <table> を使用して android で HTML メールを送信するなど - 比較的組み込みの意図的な方法はありませんか?

おそらくこれで回避できます: HTML テーブルを 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 に答える