Android使用字符串填充电子邮件地址

时间:2013-01-16 16:03:40

标签: android email

继续我下面的原始问题:

Android Sending an email using a list of email addresses

我尝试使用字符串填充电子邮件地址行。在编写电子邮件时,消息部分填充了通过单击微调器给出的答案,其代码显示为“%1 $ s”。因此,如果我在主要电子邮件的字符串中有一个包含4个不同国家/地区的微调器:

国家/地区:%1 $ s

它将在最终的电子邮件中显示为:

国家:英国

例如。

当我将此字符串放入电子邮件地址而不是最初看起来像:

home%1$s@gmail.com

在最后的电子邮件中发布:

homeUK@gmail.com

它保持为home%1$s@gmail.com!

这有什么理由吗?它是否无法添加到地址行?

我已在下面附上我的代码,非常感谢某人的帮助。我一直把头发拉出来。该应用程序的其余部分已完成!

主要活动

public void sendFeedbackMessage(String subject, String message) {


        Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND);

        String aEmailList[] = { getResources().getString(R.string.emailaddress_format) };
        String bEmailList[] = { ("country@gmail.com") };

        messageIntent.putExtra(android.content.Intent.EXTRA_EMAIL, aEmailList);
        messageIntent.putExtra(Intent.EXTRA_CC, bEmailList);
          //email.putExtra(Intent.EXTRA_BCC, new String[]{to});

        messageIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);

        messageIntent.setType("plain/text");
        messageIntent.putExtra(android.content.Intent.EXTRA_TEXT, message);

        startActivity(messageIntent);




    }


} 

以及相关的字符串

<string
        name="emailaddress_format">country%1$s@gmail.com</string>

如果需要更多代码来查看我想要做的事情,请告诉我,我会添加它。我不想用整个代码重载每个人,然后尝试解释我在哪里挣扎。

希望有人能帮助我,我才有意义。

非常感谢

1 个答案:

答案 0 :(得分:0)

不确定您遇到的特定问题的确切答案,但更容易实现您想要实现的目标:

Spinner yourSpinner = (Spinner)findViewById(R.id.yourSpinner);
String country = yourSpinner.getSelectedItem().toString();

String aEmailList[] = { "country" + country + "@gmail.com" };

这将获取此人从微调器中选择的国家/地区并将其转换为字符串,然后您可以将其放置在EXTRA_EMAIL中。