android - 使用单个活动和导航组件替代片段中活动的 onSupportNavigateUp
问题描述
我onSupportNavigateUp()
在活动中使用,现在我正在使用单一活动架构和导航组件问题是我卡在这里我没有找到任何替代onSupportNavigateUp()
和onBackPressed()
fragment
navcontroller
override fun onSupportNavigateUp(): Boolean {
// some code like showing ad
onBackPressed()
return super.onSupportNavigateUp()
}
但我找到了解决方案onBackPressed()
,onBackPressedDispatcher
但问题是只有在按下导航栏后退按钮时才有效,不适用于工具栏向上按钮
requireActivity().onBackPressedDispatcher.addCallback(this) {
// some code like showing ad
}
解决方案
对我来说,这项工作是你已经设置了像这样的工具栏的导航组件
toolbar.setupWithNavController(findNavController())
toolbar.setNavigationOnClickListener {
// some code
findNavController().navigateUp()
}
推荐阅读
- oracle - 是否可以在实体框架数据上下文中使用 Oracle Label Security?
- android - WebRTC 仅被 LTE 网络上的服务器断开,但 wifi 和 5g 网络都可以
- python - 过滤查询结果中的嵌套模式行 - Sqlalchemy (Marshmallow)
- flutter - 如何创建一个可以向上/向下/向左/向右滑动的小部件?
- django - 为后端 API + 前端 SPA 设置 OIDC
- python-3.x - TF Keras 模型服务 REST API JSON 输入格式
- typescript - NestJS 无法解析模块内部的依赖关系
- javascript - 游戏不工作,但我的代码看起来不错
- javascript - 使用 worker 终止实现 JS WebWorkers Job Queue
- c - 从 .txt 文件中读取内容并使用 fscanf 存储在结构中