android - *在 NavController 中没有 backStack 功能?
问题描述
在使用新的片段导航时,我想将当前的 backstack 转储到日志中,以获取信息以了解它是如何工作的。问题是,当我获得 NavController 时,它似乎没有任何 backstack 属性或函数。
这是一个简单的例子:
class MyFragment: Fragment() {
...
override fun onResume() {
super.onResume()
// Dump the back stack
Log.i("MyFragment", findNavController().currentBackStackEntry?.destination.label)
}
...
在 Studio 中,找不到currentBackStackEntry 。backStackEntry
和previousBackStackEntry
(或显式使用函数)也是如此。当然,在编译时,我得到一个未解决的引用错误。
我在用着:
- 安卓工作室 4.1.1
- Kotlin 插件 1.4.10
- 导航-片段-ktx & 导航-ui-ktx 2.3.1
我可以使用 NavController 的其他功能/属性,例如获取图形。只有 *backStack* 属性似乎不存在。
所以,问题是为什么这些属性不可用,但没有记录(它们应该从导航-*:2.2.0 开始就存在)并且其他人看到同样的问题吗?
解决方案
推荐阅读
- node.js - NodeJS child_process exec函数无法运行命令?
- python - _tkinter.TclError:找不到布局 PViewStyle
- javascript - 通过连接调度一个动作我收到一个错误超过最大调用堆栈大小
- php - 如何在 Codeigniter 中使用一个查询插入和更新现有数组数据?
- java - JWT 字符串必须恰好包含 2 个句点字符。找到:0
- css - CSS Box 阴影覆盖前一个 div 阴影
- r - 如何绘制前 20 种犯罪类型(芝加哥数据集的犯罪)的逮捕率 (%)?
- ios - 将子视图控制器添加到子视图,但使其在没有导航控制器的情况下成为整个视图的模态
- ruby-on-rails - RSpec 控制器规范:如何测试呈现的 JSON?
- excel - 使用 excel VBA 在 Word 中打开受密码保护的 pdf