2

スタック上の以前のアクティビティではなく、特定のアクティビティ (アプリの起動時に読み込まれるアクティビティ) が表示されるように、アプリの [戻る] ボタンの既定の動作をオーバーライドしたいと考えています。これを行うための良い方法は何ですか?

4

4 に答える 4

3

finish()すべての中間アクティビティ

あなたも使うことができますIntent.FLAG_ACTIVITY_CLEAR_TOP

@Override
public void onBackPressed()
{
Intent mIntent= new Intent(mContext, mainFirst.class)
    startActivity(mIntent);
    mIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    finish();
}
于 2012-04-26T06:03:13.050 に答える
3
Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
myIntent .setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    CurrentActivity.this.startActivity(myIntent);

NextActivity がメインです

于 2012-04-26T06:06:29.810 に答える
1

次のアクティビティに移動するインテントを使用している場合は、その後、finish() を呼び出すだけです。例: アクティビティ -1,2,3。あなたの流れは 1->2->3 です

したがって、インテント 2 から 3 を呼び出すときは、そのインテントの後に finish() アクティビティ 2 を実行するだけです。バックプレスすると1に戻ります。

他のオプションは

@override onBackPressed 

ただし、対応するフラグを使用して、1 のインスタンスが 1 つだけであることを確認する必要があります。

于 2012-04-26T06:04:48.837 に答える
0
@Override
public void onBackPressed()
{
    startActivity(new Intent(mContext, FirstActivity.class));
    finish();
}
于 2012-04-26T06:04:00.787 に答える