1

以前にスタックされたアクティビティを強制終了する方法を教えてください。私の要件は、アクティビティA ----> B -----> C ------>D-----から移動できるようにすることです。 > E次に、アクティビティスタックは EDCBAになります。すべての作業が完了したら、Eにい ます。次に、を 使用してアクティビティBに移動します。

startActivity(intent); 

this.finish();

このコードは Eアクティビティのみを強制終了しますが、 CDアクティビティも強制終了します。どうやってやるの。ありがとう。

4

3 に答える 3

7

1つの解決策は、フラグFLAG_ACTIVITY_CLEAR_TOPを使用してアクティビティ[B]を呼び出すことです。

Intent b = new Intent(this,B.class);
b.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(b);
this.finish();

これは殺しますC D E

于 2012-04-07T05:46:11.463 に答える
3
Intent intent  = new Intent(this, B.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);        
    startActivity(intent);
于 2012-04-07T05:48:10.327 に答える
2

アクティビティのfinishを呼び出すことができるように、アクティビティコンテキストをintetに渡す必要があります。

また、gooのアイデアは、を使用してアクティビティを開始することですstartActivityForResult(Intent, int).

int開始するアクティビティのコードはどこにありますか。

後で呼び出すことができfinishActivity(int requestCode)、指定したコードのアクティビティを強制終了します。内のアクティビティのコード(ID)を持つことができますstrings.XML

http://developer.android.com/reference/android/app/Activity.html#startActivityForResult(android.content.Intent、int

于 2012-04-07T05:47:21.307 に答える