android,kotlin2023. 3. 9. 14:47

[kotlin]fragment system backpressed 적용방법

 

activity 에서는 backpressed overriding 있는데

 

fragment에는 없다..

 

androidx에서 제공한단다..

 

fragment에서 작업한다.

override fun onAttach(context: Context) {
    super.onAttach(context)

   val callback : OnBackPressedCallback = object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
           Log.d("T", "handleOnBackPressed ->")
        }
    }
    requireActivity().onBackPressedDispatcher.addCallback(this , callback)
}

주의할 점은 

 

onBackpress를 activity 안에서 구현하고 있다면, super.onBackPressed() 호출 해야.. callback된다.

 

 

[참조] https://readystory.tistory.com/186

 

[Android] Fragment에서 Back Press 처리하기(with. OnBackPressedDispatcher)

Android App을 개발하다 보면 화면을 구성할 때 하나의 액티비티에 다수의 프래그먼트를 사용해서 구성하는 경우가 많습니다. 그러나 안드로이드의 Fragment에는 Activity의 onBackPressed()와 같은 콜백 메

readystory.tistory.com

 

Posted by thdeodls85