Jetpack naviagation 을 쓰는 와중에 아래와 같은 에러가 발생하였다.
binding.bottomNavigationView.setupWithNavController(binding.NavHostFragment.findNavController())
binding.NavHostFragment.findNavController()
위의 코드에서 에러가 발생하였다.
우선적으로 xml 파일에 가서 fragment 를 FragmentContainerView로 변경해주었다.
(FragmentContainerView를 사용시에는 xml레이아웃상 id가 반드시 필요하다.)
FragmentContainerView를 사용하여 NavHostFragment를 만들 때
Navigation.findNavController를 통하여 NavController를 검색하려고 하면 실패한다고 한다.
대신에 NavHostFragment에서 직접 NavController를 검색할 수 있게 해준다.
val navHostFragment =
supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment
val navController = navHostFragment.navController
위와 같이 수정하였더니 에러가 해결되었다.