gpt4 book ai didi

android - 如何使用导航组件获取上一个目的地?

转载 作者:行者123 更新时间:2023-12-04 14:45:17 25 4
gpt4 key购买 nike

我有 fragment A、B、C 和 X,它们的导航如下。

 A --> X 
B --> X
C --> X

我怎么知道 X 中上一个或上一个目的地的信息?

当前目标 ID 可以通过以下方式找到
Navigation.findNavController(v).getCurrentDestination().getId()

我也尝试使用 getBackStackEntry(int destinationId)但它只返回目的地 id 的最顶层 NavBackStackEntry。换句话说,当前目的地。

还有 getActivity().getSupportFragmentManager().getBackStackEntryCount();返回 0。

可能的解决方案是:
  • 将数据从 A、B 和 C 传递到 X,并通过以下方式识别前一个 fragment
    检查该数据。
  • 使用共享的 SharedViewModel。

  • 是否有可能获得当前目的地?

    最佳答案

    java :Navigation.findNavController(v).getPreviousBackStackEntry().getDestination().getId(); Kotlin :findNavController().previousBackStackEntry?.destination?.id这应该会在“X” fragment 中为您返回上一个目的地的 id。

    关于android - 如何使用导航组件获取上一个目的地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60690605/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com