我试图在电子邮件中发送各种条目变量,但我尝试输入多个“额外文本”意图,并且它只发送指定的最后一个额外文本中的文本。如何获取电子邮件中的所有条目文本?下面是代码:
@Override
public void onClick(View v) {
if (v.getId()==findViewById(R.id.enviar).getId())
{
Intent intentEmail = new Intent(Intent.ACTION_SEND, Uri.fromParts("mailto", "villasantdesign@gmail.com", null));
intentEmail.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"villasantdesign@gmail.com"});
intentEmail.putExtra(Intent.EXTRA_SUBJECT, "Consulta Técnica");
intentEmail.putExtra(Intent.EXTRA_TEXT, etlugar.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etfecha.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etcable.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etqe.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etantena.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etampli.getText());
intentEmail.putExtra(Intent.EXTRA_TEXT, etmodulo.getText());
intentEmail.setType("message/rfc822");
startActivity(Intent.createChooser(intentEmail, "Enviar"));
}}}
答案 0 :(得分:5)
我对此有一点了解,你可以转换你的代码,如下面我的示例代码,可能是它的
public void onClick(View v) {
String message = "";
message += "\n" + etlugar.getText());
message += "\n" + etfecha.getText());
message += "\n" + etcable.getText()
etc....
Intent intentEmail = new Intent(Intent.ACTION_SEND, Uri.fromParts("mailto", "villasantdesign@gmail.com", null));
intentEmail.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"villasantdesign@gmail.com"});
intentEmail.putExtra(Intent.EXTRA_SUBJECT, "Consulta Técnica");
intentEmail.putExtra(Intent.EXTRA_TEXT, message );
intentEmail.setType("message/rfc822");
startActivity(Intent.createChooser(intentEmail, "Enviar"));
}
答案 1 :(得分:3)
您正在尝试发送Extra Text,这是一个关键标识符。这意味着每次额外放置时都会更换。所以只会发送最后一个额外的文字。尝试为每个额外的文本使用不同的键,这样你就可以得到它。像
intentEmail.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"villasantdesign@gmail.com"});
intentEmail.putExtra(Intent.EXTRA_SUBJECT, "Consulta Técnica");
intentEmail.putExtra("Extra Text 1", etlugar.getText());
intentEmail.putExtra("Extra Text 2", etfecha.getText());
intentEmail.putExtra("Extra Text 3", etcable.getText());
intentEmail.putExtra("Extra Text 4", etqe.getText());
intentEmail.putExtra("Extra Text 5", etantena.getText());
intentEmail.putExtra("Extra Text 6", etampli.getText());
intentEmail.putExtra("Extra Text 7", etmodulo.getText());
您可以将自己的键名称作为我在上面使用过的字符串。以及getextras中的那个键。
答案 2 :(得分:0)
连接要添加的所有文本,然后只添加一个Intent.EXTRA_TEXT
。
Intent.EXTRA_TEXT
是Bundle中值的关键,这就是为什么你不能添加多个。