イベントが発生したときに別のアクティビティ(アクティビティ2)を呼び出すアクティビティ1(タブホスト内)があります。そして、他のイベントが発生すると、アクティビティ 2 は別のアクティビティ (アクティビティ 3) を呼び出します。次に、アクティビティ 2 と 3 が自分自身で終了し、アクティビティ 1 に戻ります。私の問題は、私が activity1 にいて、戻るボタンを押すと、activitiy1 が適切に destory() を取得することです。これは理にかなっています。しかし、イベントをトリガーして activity2 または activity3 に移動し、イベントを終了して activity1 に戻ると、[戻る] ボタンを押したときに activity1 が正しく destory() を取得しなかったため、次回アプリに再び入るときに、クラッシュします。
これが私のコードです:
アクティビティ1:
public void onClick(View v)
{
Intent feedbackintent = new Intent(StartActivity.this, //activity1 calling activity2
FeedBackActivity.class);
startActivity(feedbackintent);
アクティビティ 2:
public void onClick(View v)
{
Intent intent2 = new Intent(FeedBackActivity.this, //act2 called act3, and finish act2 itself
SaveNewRecord.class);
startActivity(intent2);
finish();
}
アクティビティ 3:
savesomething...() //act3 do something and finish itself and go back to act1
finish();