0

複数のタブがあり、その中にそれぞれのアクティビティグループがあります。あるタブから別のタブに移動してからヒットバックすると、インテントデータが失われます。

たとえば、アクティビティ1を開始し、アクティビティグループを介してオブジェクト1をアクティビティ2に渡し、次にアクティビティ3に移動してオブジェクト1を渡しますが、アクティビティ2に戻ると、onCreateが呼び出されることはなく、必要に応じてインテントデータを設定できません。アクティビティ3に戻ります。

4

1 に答える 1

1

使用できるアクティビティ間でデータを送信する場合、startActivitiForResultまたは次のような操作を行うことができます。

Intent intent = new Intent(Activity.this, Activiti2.class);
intent.putExtra("key", "value");
startActivity(intent);

アクティビティ2:

String getData = getIntent().getStringExtra("key","default value");
// or getParent().getIntent().getStringExtra("key","default value"); depending on your situation.

また、Activity2からActivityにデータを送信する場合は、次のようにすることができます。

 Intent intent = getParent().getIntent();
 intent.putExtra("key", 0); // default sorting
 getParent().setResult(RESULT_OK, intent);
 finish();
于 2012-01-26T10:38:41.883 に答える