0

以下の元の質問から先に進みます。

Android メールアドレスのリストを使用してメールを送信する

文字列を使用して電子メール アドレスの行を入力しようとしました。電子メールを作成するとき、メッセージ セクションには、スピナーをクリックして与えられた回答が入力されます。このコードは "%1$s" として表示されます。したがって、メインの電子メールの文字列に 4 つの異なる国があるスピナーがある場合、次のように入力します。

国: %1$s

そして、送信される最終的な電子メールに次のように表示されます。

国: イギリス

例えば。

この文字列を最初のように表示するのではなく、電子メール アドレスに入れると、次のようになります。

ホーム%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>

私がやろうとしていることを確認するためにさらにコードが必要な場合は、お知らせください。追加します。コード全体で全員を過負荷にしてから、苦労している場所を説明したくありませんでした。

誰かが私を助けてくれることを願っています。

どうもありがとう

4

1 に答える 1

0

あなたが抱えている特定の問題に対する正確な答えはわかりませんが、達成しようとしているように見えることを達成するためのより簡単な方法は次のとおりです。

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

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

これにより、その人がスピナーから選択した国が取得され、文字列に変換さEXTRA_EMAILれます。これは、既に行っているように に配置できます。

于 2013-01-16T16:34:30.177 に答える