implementation 'androidx.core:core-ktx:1.0.2'
를 추가해야 합니다.BottomNavigation 은 res 폴더 밑에 menu를 만들고 그 안에 xml 파일을 정의해야 합니다.
반드시 resource type을 menu로 해주어야 합니다.
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/homeFragment"
android:icon="@drawable/ic_bottom_home_no_select"
app:showAsAction="always"
android:enabled="true"
android:title="홈"
tools:ignore="AlwaysShowAction" />
<item
android:id="@+id/searchFragment"
android:icon="@drawable/ic_bottom_search_no_select"
app:showAsAction="always"
android:title="검색" />
<item
android:id="@+id/lockerFragment"
android:icon="@drawable/ic_bottom_locker_no_select"
app:showAsAction="always"
android:title="보관함" />
</menu>
private fun initBottomNavigation(){
supportFragmentManager.beginTransaction()
.replace(R.id.main_frm, HomeFragment())
.commitAllowingStateLoss()
binding.mainBnv.setOnItemSelectedListener{ item ->
when (item.itemId) {
R.id.homeFragment -> {
supportFragmentManager.beginTransaction()
.replace(R.id.main_frm, HomeFragment())
.commitAllowingStateLoss()
return@setOnItemSelectedListener true
}
}
false
}