LoginSignup
9
9

More than 5 years have passed since last update.

AndroidのToolbarにちゃんと戻れる「戻る」ボタンを追加する

Last updated at Posted at 2018-10-07

よく見るのが、以下を追加すれば戻るボタンが表示されるというもの

MainActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_check)
    setSupportActionBar(toolbar_check)
    supportActionBar?.let {
        it.setDisplayHomeAsUpEnabled(true)
        it.setHomeButtonEnabled(true)
    } ?: IllegalAccessException("Toolbar cannot be null")
}

ウキウキして実行すると、ボタンは表示されるが戻らない

まじかよ・・・

ちゃんと戻るには上記のコードに加えて、「戻る」実装をしてあげないといけない
(多分)ナウい実装は以下の通り
全然そんなことはなかった(@kofuk さん教えて頂きありがとうございます)

ただ戻るだけなら、AndroidManifest.xml
android:parentActivityを設定してやればいいです

AndroidManifest.xml
<activity
    android:name=".SecondActivity"
    android:parentActivityName=".FirstActivity" />

もし、戻るボタンが押された時に保存なり何なりしたい場合は
以下のコードで処理を挟んでやればいいかなと思います

MainAvtivity
override fun onBackPressed() {
    // Do something
    super.onBackPressed()
}

override fun onSupportNavigateUp(): Boolean {
    onBackPressed()
    return true
}

これで無事前のActivityに戻れる

9
9
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
9