を働いていないアクティビティAで、ユーザは活動Bに行くDから、[アクティビティC [アクティビティD.ユーザーが何らかのアクションを実行する場合、ユーザは、活動E.に戻るスタックと意図フラグは、私のアプリランチャーIN
をリダイレクトする必要があります今、A-> B-> C-> D-> E
活動Eからの場合は、ユーザーを押して[戻る]ボタンと同じように、彼は私がこれをachiveする意思フラグを設定するにはどうすればよいのアクティビティAに移動する必要があります。
を働いていないアクティビティAで、ユーザは活動Bに行くDから、[アクティビティC [アクティビティD.ユーザーが何らかのアクションを実行する場合、ユーザは、活動E.に戻るスタックと意図フラグは、私のアプリランチャーIN
をリダイレクトする必要があります今、A-> B-> C-> D-> E
活動Eからの場合は、ユーザーを押して[戻る]ボタンと同じように、彼は私がこれをachiveする意思フラグを設定するにはどうすればよいのアクティビティAに移動する必要があります。
あなたが試すことができます。..
@Override
public void onBackPressed() {
// your code.
Intent intent = new Intent(this, A.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
てみ事前に
おかげで、
@Override
public void onBackPressed() {
Intent intent = new Intent(E.this, A.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
の下にチェック@RaviBhandari 'NEW_TASK'は、ここでは必要ありません。 'CLEAR_TOP'で十分です。 –
使用この
@Override
public void onBackPressed() {
Intent intent = new Intent(this, A.class);
startActivity(intent);
finish();
}
これは 'E'の既存のインスタンスの上に' A'の別のインスタンスを開始します。おそらくOPが望むものではないでしょう。 –
読むhttps://developer.android.com /training/implementing-navigation/ancestral.htmlおよびこのhttps:// developer .android.com /デザイン/パターン/ navigation.html – Raghunandan
'仕上げ();'他の活動バックアクティビティAへの直接よりも、あなたがもしそう。今まであなたが意図を切り替えているときB-> Eから –
は、ちょうど戻ってDからいくつかのいずれかを押して、その後も、代わりにOB C.にリダイレクトしている場合のみ、スタック –