通常,电子邮件应用只有一个EditText,应用程序会复制用户编写的内容并将其粘贴到电子邮件客户端。 我还有2个字段,特别是2个包含经度和纬度协调的TextView,我也希望它们出现在电子邮件正文中。 我使用此代码,但只有最新的字符串出现在邮件(lat)
中 Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"email@email.com"});
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
emailIntent.putExtra(Intent.EXTRA_TEXT, message);
emailIntent.putExtra(Intent.EXTRA_TEXT, longi);
emailIntent.putExtra(Intent.EXTRA_TEXT, lat);
emailIntent.setType("message/rfc822");
emailIntent.putExtra(Intent.EXTRA_STREAM, imageUri);
startActivity(Intent.createChooser(emailIntent, "Choose an Email client"));
答案 0 :(得分:2)
您为putExtra()
致电Intent.EXTRA_TEXT
的第二次和第三次,您将替换之前的值。
而是创建一个字符串,其中包含整个消息,包括longi
和lat
值,并使用putExtra()
对于那一个字符串Intent.EXTRA_TEXT
。
答案 1 :(得分:1)
构造一个包含所有三个字段的字符串。
String text = "";
text += message + "\n" + longi + "\n" + lat;
emailIntent.putExtra(Intent.EXTRA_TEXT, text);
当然可以根据需要使用文字和格式。