2

A、B、C、D の 4 つのアクティビティがあるとします。それぞれにボタンがあり、A が B を開始し、B が C を開始し、C が D を開始します。そして、アクティビティ B に動的なリストビューがあり、入力されているとしましょう。 B から項目を選択すると C が開始され、「戻る」ボタンを押すと、残した状態 (動的項目とスクロール状態) のアクティビティ B が表示されます。

今私が欲しいのは、アクティビティ D のボタンを使用して、C にいて戻るボタンを押したかのように、その状態 (項目データとスクロール位置) を維持して B に戻りたいということです。

これまでのところ、D から B に戻るには、意図フラグとして「FLAG_ACTIVITY_CLEAR_TOP」を使用する必要があることがわかりました。

何か案は?ありがとう。

4

2 に答える 2

2

アクティビティ C では、startActivityForResult(Intent intent, int requestCode) によって D を開始できます。D が onActivityResult(int requestCode, int resultCode, Intent data) のアクティビティ C で指定された結果で終了したら、finish(); を呼び出すだけです。アクティビティ C を終了します。アクティビティ B に戻りたい場合は、アクティビティ D の結果を設定することを忘れないでください

setResult(Activity.RESULT_OK, myIntent); //or any other result or intent
于 2012-10-15T12:07:50.017 に答える
0

アクティビティ C のボタン C クリック イベントにこの方法でコードを追加します。

 Intent intent=new Intent(CActivity.this,DActivity.class);
 startActivity(intent);
 CActivity.this.finish();
于 2012-10-15T11:57:52.170 に答える