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

Alexa289

我需要进行自定义行为,当用户按下“后退”按钮时,用户将以编程方式转到特定的目的地。我实际上已经阅读了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
    }

但我收到这样的类型不匹配错误 在此处输入图片说明

hoo

您必须创建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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用i18n在控制器中返回自定义的休眠验证消息?

SwiftUI中NavigationView导航栏的自定义后退按钮

如何替换/自定义情节提要导航控件中的后退按钮图像

导航控制器中的取消按钮,而不是后退按钮

如何使用RSpec在控制器中测试自定义路由

更改导航后退按钮的目的地

导航控制器中的“后退”按钮

自定义后退导航,用于反应导航后退按钮

如何在导航控制器中更改目的地的标签属性?

如何在Android中使用导航控制器以编程方式返回上一个目的地?

自定义后退按钮-Android导航

SwiftUI-自定义导航“后退”按钮,在视图之间奇怪地来回跳转

Android Jetpack导航控制器| 获取当前目的地的动作列表

Android片段导航自定义导航后退按钮

如何创建自定义后退按钮?

在本地开发期间如何使用CF定义的目的地?

如何在控制器中的Laravel中使用自定义防护登录用户

UINavigationControllerDelegate方法,在iOS 8中使用导航控制器进行自定义转换

如何在具有不同内容的控制器中多次使用自定义UIView?

如何在SAP UI中的控制器中定义自定义控制器?

在导航控制器中使用默认的后退按钮

如何在ASP.NET MVC中的控制器中使用自定义方法

如何在我的自定义导航控制器中隐藏标签栏?

从开始目的地片段访问导航控制器

使用导航控制器按下后退按钮后,如何防止之前的片段出现?

我正在尝试将数据从自定义 Angular JS 服务返回到控制器,但它始终返回“{}”

React Native 抽屉导航:如何通过单击特定场景中的自定义按钮打开抽屉?

无法在 React Native 中的自定义后退按钮上运行反应导航功能

如何在自定义框架中嵌入导航控制器