[Kotlin]navigationでの戻るボタン制御
2675 ワード
概要
FragmentContainerView
でnavigation
での画面遷移を管理している際、
端末の戻るボタンの制御をどうするべきか整理しました。
実装
公式に適切な処理の記載があります。
class MyFragment : Fragment() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// This callback will only be called when MyFragment is at least Started.
val callback = requireActivity().onBackPressedDispatcher.addCallback(this) {
// Handle the back button event
}
// The callback can be enabled or disabled here or in the lambda
}
}
理想は・・
FragmentContainerView
を表示しているActivity
で、
このActivityのnavigation
の場合はなど、
戻るボタン押下の場合は一律で、
popBackしてくれるような書き方が出来たら良いなと思うんですが、
Activity
内のonBackPressed()
で書く訳にもいかない気がするので、
各Fragment内でaddCallback
を記載するしか無いのかもしれません。
Author And Source
この問題について([Kotlin]navigationでの戻るボタン制御), 我々は、より多くの情報をここで見つけました https://zenn.dev/chiii/articles/63b161485db333著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Collection and Share based on the CC protocol