メイン アクティビティがあり、ボタンをクリックすると新しいアクティビティが開始されます。そのために次のコードを使用しました。
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
上記のコードはメインアクティビティから実行されました。
メイン アクティビティによって呼び出される新しいアクティビティには、[戻る] ボタンがあります。この [戻る] ボタンをクリックすると、新しいアクティビティが閉じられ、元のメイン アクティビティに戻る必要があります。
super.finish()
(新しいアクティビティから)呼び出してみましたfinish()
が、これによりアプリケーション全体(メイン アクティビティを含む)が閉じられます。
現在フォーカスされているアクティビティを閉じて、メイン アクティビティに戻るにはどうすればよいですか?
編集済み
携帯電話の戻るボタンでもアプリ全体が閉じてしまうことから、2 番目のアクティビティを間違って起動してしまったのではないかと考えています。
はい、探していましたが、
同じマニフェスト コードとアクティビティを開始するための同じコードを使用する設定アクティビティを作成しました。
設定アクティビティの場合、戻るボタンを押すとメインアクティビティに戻ります。
上記のメインの質問で述べたアクティビティでは、アプリ全体が終了してしまいます。
したがって、問題はアクティビティを終了するコードではなく、アクティビティ自体にあるようです。
ベストアンサー1
開始する前にfinish()
メソッドを呼び出していると思います。MainActivity
SettingsActivity
あなたが説明したシナリオは、次の 2 つの方法で発生します。
どちらか
戻るキーを押すと自動的に になるよう内側android:noHistory = "true"
に設定しました。MainActivity
AndroidManifest.xml
MainActivity
finish
または
「SettingsActivity」に切り替える前に、 を呼び出してfinish()
それMainActivity
を終了しています。戻るボタンを押すと、スタック内にポップする他のアクティビティがプリセットされていないため、メイン画面に戻ります。