0

これを聞かなければならないのは馬鹿げていますが、複数のEditTextビューからUI情報を取得してメール本文に配置する方法がわかりません。参考までに、私は意図を持っています。メッセージ本文にデータを入力したいだけです。

    Intent buildingfireemail = new Intent(android.content.Intent.ACTION_SEND);
            buildingfireemail.setType("plain/text");///.setType("message/rfc822")
            buildingfireemail.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"to@email.com"});
            buildingfireemail.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject");
            buildingfireemail.putExtra(android.content.Intent.EXTRA_TEXT, "Text"
    //////////////I need to add data from 80+ views into here.
    );try {
                startActivity(Intent.createChooser(buildingfireemail, "Send mail..."));
            } catch (android.content.ActivityNotFoundException ex) {
                Toast.makeText(BuildingFireActivity.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
            }
4

2 に答える 2

3

これを試して :

Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL  , new String[]{"recipient@example.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT   , editText.getText().toString());
try 
{
     startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(MyActivity.this, "There are no email clients installed.",Toast.LENGTH_SHORT).show();
}
于 2012-05-07T04:37:44.967 に答える
1

すべてのテキスト編集から文字列全体を返す関数を作成します。例えば:

private String getText() {
    String text = "";

    text += mEditText1.getText().toString() + "\n";
    text += mEditText2.getText().toString() + "\n";

    return text;
}

次のように使用します。

buildingfireemail.putExtra(android.content.Intent.EXTRA_TEXT, getText());

クラスの初期メンバー変数:

private EditText mEditText1;

setContentView の後に、すべての編集テキストを onCreate のメンバー変数に取り込みます。

mEditText1 = (EditText) findViewById(R.layout.editText1);
于 2012-05-07T04:36:36.780 に答える