안드로이드 개발
[Android/Kotlin] Hide Activity's Bottom Navigation in Fragment (프래그먼트에서 액티비티 바텀 네비게이션 숨기기
나도개발자
2020. 9. 29. 12:16
액티비티에서 프래그먼트를 불러오면 바텀 네비게이션이 보이는 경우가 있다. 이럴 때 각 프래그먼트에서 바텀 네비게이션을 가리는 방법에 대한 포스팅이다.
1. activity에 Bottom Navigation을 Show/Hide 함수 만들기
프로그래먼트를 불러오는 상위 activity에 HideBottomNavi라는 함수를 만들어준다. state 값에 따라 Bottom Navigation의 visibility 속성을 이용하여 보여주거나 숨겨주는 기능을 한다.
fun HideBottomNavi(state: Boolean){
if(state) binding.navi.visibility = View.GONE else binding.navi.visibility = View.VISIBLE
}
2. 원하는 fragment에서 함수 불러오기
Fragment 생명주기에서 시작인 onCreate()에서 Bottom Navigation을 숨겨주고, Fragmnet가 사라지기 전 onDestory()에서 다시 Bottom Navigation을 보여준다.
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val mainAct = activity as MainAct
mainAct.HideBottomNavi(true)
}
override fun onDestroy() {
super.onDestroy()
val mainAct = activity as MainAct
mainAct.HideBottomNavi(false)
}
완성
본 작성자는 안드로이드 개발을 공부하고 있는 학생으로 피드백 및 질문을 환영합니다. 그러나 무단복제 및 배포는 정중하게 사양하고 있으며, 참고 사이트로 링크를 남기실 때는 동의를 구해주시기 바랍니다.
반응형