728x90
안드로이드에서 뒤로 가기 기능 구현 시, 사용되던 onBackPressed 메서드가 deprecated 되었다.
대신, onBackPressedCallback으로 새롭게 탄생했다.
https://developer.android.com/reference/androidx/activity/OnBackPressedCallback
먼저 Callback을 선언한다.
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
override fun handleOnBackPressed() {
//TODO: 뒤로 가기 클릭 시, 동작할 로직
}
}
만일 특별한 동작을 구성하지 않는다면, Device의 뒤로 가기 버튼을 눌러도 반응하지 않게 된다.
OnBackPressedCallback의 인자로 넘어가는 Boolean 값은 Callback 기능의 활성화 여부이다.
onCreate에서 다음과 같이 onBackPressedDispatcher에 선언한 Callback을 add 한다.
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
이제 정상적으로 Custom 뒤로 가기 기능을 구현할 수 있다.
추가로, 강제로 뒤로 가기 Callback에 대한 호출이 필요할 때는 아래처럼 처리한다.
onBackPressedDispatcher.onBackPressed()
728x90