3 つ以上のクラスを持つアプリケーションを開発しています。私のアプリは次のように動作しています:
メインの活動から別のクラスにジャンプしてから 3 クラスに移動し、2 クラスに戻ってから 3 クラスに戻りました。
私の問題は、3 位のときに戻るボタンを押すと、2 位、3 位、2 位、1 位、そしてホームに戻ったことです。
このプロセスを停止したい。
3 つ以上のクラスを持つアプリケーションを開発しています。私のアプリは次のように動作しています:
メインの活動から別のクラスにジャンプしてから 3 クラスに移動し、2 クラスに戻ってから 3 クラスに戻りました。
私の問題は、3 位のときに戻るボタンを押すと、2 位、3 位、2 位、1 位、そしてホームに戻ったことです。
このプロセスを停止したい。
問題は、3 等から 2 等に戻ったときに、3 等のインスタンスを破棄しなかったことだと思います。おそらく、startActivity(second class) のような新しいアクティビティを開始したばかりです。別のクラスに切り替えるたびに、前のインスタンスを破棄せずに新しい Activity インスタンスを作成します。これを繰り返すと、多くの Activity インスタンスがタスクスタックに保持されました。繰り返したくない場合は、以前のアクティビティを破棄するか、実装を変更する必要があります。自分でカスタマイズされたスタックを作成し、クラス インスタンスをアクティビティではなくビューとして追加または削除できます。つまり、1->(追加)2->(追加)3->(削除 3)2->(追加)3->(削除 3)2->(削除 2)1 です。
onStop() メソッドで finish() を使用する