툴바(ToolBar) 를 사용하는 목적은 액션바와 같다. 그런데 액션바는 액티비티 창이 자동으로 출력하는 액티비티의 구성요소지만, 툴바는 개발자가 직접 제어하는 뷰라는 데 차이점이 있다. 툴바를 쓴다는 것은 액션 바를 쓰지 않겠다는 것이고, 하나의 액티비티 전체가 콘텐츠 영역이 된다.
즉, 툴바는 layout 에 직접 작성해야하는데, androidx.appcompat.widget.Toolbar 클래스를 이용한다.
액션바를 쓰면 개발자가 신경쓸 부분이 줄어들기 때문에 편하지만, 툴바는 더 신경쓸게 많은 대신 개발자가 직접 제어할 수 있으므로 보다 더 다양한 기능을 제공할 수 있다.
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
style="@style/Widget.MaterialComponents.Toolbar.Primary"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
layout 에 툴바를 준비했으면 이제는 액티비티 코드에서 setSupportActionBar(binding.toolBar) 구문으로 액션바의 내용이 툴바에 적용되도록 지정해줘야 한다.
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
setSupportActionBar(binding.toolbar)
}
}