如何使用 Android 中的导航控制器使自定义后退按钮返回到特定目的地?

how to make custom back button to go back to certain destination using navigation controller in Android?

我需要做一个自定义行为,当用户按下后退按钮时,用户将以编程方式转到某个目的地。我实际上已经阅读了这个

但我不明白如何使用自定义后退按钮code.it 我觉得很奇怪。

我试过使用下面的代码

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 抽象的新实例 class 并实现其抽象方法。

希望对您有所帮助:

        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

}