0

インテントとに問題がありputExtraます。私がやりたいことはこれです:アクティビティA(それは私のものではありませんMainActivity)で、ボタンをクリックすると、すべてのアクティビティが閉じられ、文字列が送信され、メインのアクティビティが起動されます.テスト目的で、私のとのテストダイアログが表示されますstring.今まではすべて順調で、必要に応じて機能します。

問題は、再起動MainActivityすると (それを行う必要があり、買い物リストのようなもので、新しい買い物リストを開始する必要があります)、putExtra文字列を含むダイアログが再び表示されることです。

ここに私のコードスニペットがあります:

アクティビティ A :

@Override
public void onClick(View v) {
    Intent intent = new Intent(Gestionarez.this, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_ANIMATION);
    intent.putExtra( "paramName", str );
    startActivity( intent );
    // TODO Auto-generated method stub
    dialog.dismiss();
    dialog.cancel();
}

私の中でMainActivity

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    LoadPref();

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        String myParam = extras.getString("paramName");
        ShowAlertMessage(this, "TEST", myParam + "");

    } else {

    }

}

そして、これは私MainActivityが新しい買い物リストを開始する必要があるときに私を再起動する方法です:

Intent intent = getIntent();
finish();
startActivity(intent);
4

1 に答える 1

3

交換

Intent intent = getIntent();
                finish();
                startActivity(intent);

Intent intent = new Intent(this, ActivityB.class);
                finish();
                startActivity(intent); 
于 2013-07-27T19:32:54.947 に答える