본문 바로가기
안드로이드/ActionBar

안드로이드 Toobar를 이용한 네비게이션

by 김어찐 2022. 6. 20.
728x90

Toolbar도 ActionBar 와 같은 방법으로 네비게이션 처리를 할 수 있다.
Toolbar로 부터 ActionBar 를 추출하고 이 후에는 ActionBar와 동일하게 처리해준다.

supportActionBar?.setHomeButtonEnabled(true)

supportActionBar?.setDisplayHomeAsUpEnabled(true)

 

package com.example.toobarnavigation

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        setSupportActionBar(toolbar)

        button.setOnClickListener {
            val secondIntent = Intent(this,SecondActivity::class.java)
            startActivity(secondIntent)
        }
    }
}

 

 

액션바 제거

 

세컨드 액티비티

package com.example.toobarnavigation

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.MenuItem
import kotlinx.android.synthetic.main.activity_second.*

class SecondActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_second)

        setSupportActionBar(toolbar2)

        supportActionBar?.setHomeButtonEnabled(true)
        supportActionBar?.setDisplayHomeAsUpEnabled(true)

    }

    override fun onOptionsItemSelected(item: MenuItem): Boolean {
        when (item.itemId) {
            android.R.id.home ->{
                finish()
            }
        }
        return super.onOptionsItemSelected(item)
    }
}

728x90