Android

OnBackPressedCallback 추상 클래스 onUserLeaveHint 콜백 함수

태인킴 2020. 9. 8. 20:19
반응형


1. 액티비티에서 뒤로 가기 버튼을 눌렀을 때, 콜백 함수는?

액티비티에서 뒤로 가기 버튼을 클릭 하였을 경우, Acitivity::onBackPressed() 콜백 함수가 호출 됩니다. 또한 Androidx 에서는 androidx.activity.OnBackPressedCallback 추상 클래스를 제공 합니다. OnBackPressedCallback::handleOnBackPressed() 메서드를 제공 하고 있어서, 액티비티와의 의존성을 줄이고, Fragment 에서 '뒤로 가기 버튼 로직' 을 추가 할 수 있습니다. OnBackPressedDispatcher.addCallback(LifecycleOwner, OnBackPressedCallback)을 사용해서 Fragment를 등록해 줄 수 있습니다.

 

 

2. 액티비티에서 홈 버튼을 눌렀을 때, 콜백 함수는?

홈 버튼은 앱에서 특별히 제어 할수 없습니다. 하지만, 사용자가 홈키를 눌러 사용중인 앱이 Background로 넘어가는 경우 Activity::onUserLeaveHint() 함수가 호출 됩니다. 하지만, 앱을 사용중에 전화가 걸려오는 경우에는 호출 되지 않습니다. 따라서, 사용자가 선택적으로 액티비티가 백그라운드로 이동하는 경우에만 호출 됩니다. onUserLeaveHint() 는 onPause()가 호출되기 전호출 됩니다.

 

반응형