我需要进行自定义行为,当用户按下“后退”按钮时,用户将以编程方式转到特定的目的地。我实际上已经阅读了Android导航组件中的“处理后退”按钮
但我不明白如何使用该自定义后退按钮代码。对我来说似乎很奇怪。
我已经尝试在下面使用此代码
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
fragmentView = inflater.inflate(R.layout.fragment_search_setting, container, false)
// set custom back button
val callback = requireActivity().onBackPressedDispatcher.addCallback(this) {
// navigate to certain destination
Navigation.findNavController(fragmentView).popBackStack(R.id.destination_create_event, false)
}
return fragmentView
}
您必须创建OnBackPressedCallback抽象类的新实例并实现其抽象方法。
希望对您有所帮助:
val callback = requireActivity().onBackPressedDispatcher.addCallback(object : OnBackPressedCallback(true){
override fun handleOnBackPressed() {
Navigation.findNavController(fragmentView).popBackStack(R.id.destination_create_event, false)
}
})
// The callback can be enabled or disabled here or in the lambda
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句