1

私は3つのウィンドウ(アクティビティ)を持っています。window1 ボタンには古い画像が表示され、window2 には window1 の古い画像を変更するオプションがあり、window3 には画像のプレビューが表示されます。

window3 で選択が行われると、window2 + window3 をかなりスキップして、window1 に戻ります。どうすればそれができますか?

ここに画像の説明を入力

ウィンドウ 1:

Intent MyRotationsAddPicture2 = new Intent(getBaseContext(), MyRotationsAddPicture.class);
MyRotationsAddPicture2.putExtra("Title", "r2.jpg");
startActivityForResult(MyRotationsAddPicture2,0);

ウィンドウ 2 / ウィンドウ 3 ?

String whichImage =  getIntent().getExtras().getString("Title"); 

protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    if (resultCode == 0) {
      finish();
      startActivity(getIntent());

    }
}

setResult(0);
this.finish();
System.exit(0);
4

2 に答える 2

0

あなたが望むように見えるものから、ここでは使用したくないということstartActivityForResult()です...ただ使用してstartActivity()ください。

Activity3使用中

Intent intent = new Intent(Activity3.this, Activity1.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);

Activity2スタックから削除したくない場合は、これを使用してください。

スタックから削除したい場合はActivity2、単にフラグを使用してください

intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT|Intent.FLAG_ACTIVITY_CLEAR_TOP);

または移動時に電話finish()するActivity2Activity3

Here のすべてをドキュメントで見つけることができますIntent Flags

于 2013-07-31T18:05:00.850 に答える