0

私は通常、次を使用してアクティビティ間を移動しますIntents

絵による表現は以下のようになります::

ここに画像の説明を入力

アクティビティ - A の場合 .... アクティビティ B に移動するための次のボタンがあります。

Photos.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub

                Intent PhotoIntent=new Intent(a.this,b.class);
                startActivity(PhotoIntent);

            }
        });

アクティビティ - B の場合 .........アクティビティ C に戻るための次のボタンがあります。

Map.setOnClickListener(new OnClickListener() {

                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    Intent PhotoIntent=new Intent(b.this,c.class);
                    startActivity(PhotoIntent);

                }
            });
  • アクティビティ C では .... 戻るボタンが 1 つしかありません
  • 上記のコードと同様に使用すると、元のナビゲーションに応じて2つのアクティビティに移動できません

私がから来たとしましょAC------Backでボタンを使用するCと、A

B再びC-----から来たときは、Backボタンを使用してにC移動しますB

back buttonアクティビティには 1 つしかありませんC


[編集]

そのように、私はActivityAからActivity C-----に来たとActivity C言いますactivity A

&

同じシナリオで、アクティビティ B からアクティビティ C に移動した場合 - - - - 唯一の戻るボタンを使用するActivity Cと、activity B

------- ActivityC の [戻る] ボタンの切り替えケースのようなメカニズムを関連付けようとしています


これを達成する方法

私がはっきりしていることを願っています

4

3 に答える 3

1
There is only one back button in Activity C

私の理解が正しければ、とActivity Cの両方から開始できます。この場合、アクティビティ C の [戻る] ボタンには次のコードが必要です。Activity AActivity B

backButton.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {

        // Takes you to whichever activity launched C
        finish();
    }
});

アクティビティ A からアクティビティ C を起動すると、スタックは .... {アクティビティ A}、{アクティビティ C} になります。アクティビティ C を呼び出すActivity#finish()と、アクティビティ A に移動します。アクティビティ C がアクティビティ B から開始されると、同じシナリオが展開されます。

アクティビティ C を起動した後にアクティビティ A で finish() を呼び出すと、スタック内でアクティビティ A の前に配置されているアクティビティに戻るボタンが表示されることに注意してください。

于 2013-10-07T02:20:33.907 に答える
1

戻るボタンのクリック イベントで、finish() または onBackPressed() 関数を呼び出します。

于 2013-10-07T06:56:07.693 に答える