为什么在使用 JetPack Navigation 导航后立即调用片段中的 onDestroyView

Why is onDestroyView in a fragment called immediately after navigating with JetPack Navigation

当您导航到不同的片段时,立即调用 onDestroyView() 是正常行为吗?

我调用了下面的方法来导航:

findNavController().navigate(R.id.action_homefragment_to_detailsfragment)

有没有办法避免这种情况?还是应该从 ViewModel 恢复一切?例如我在 ScrollView 中的最后一个滚动位置..

返回堆栈上的片段的视图已被销毁,但视图状态会被保存并在再次到达堆栈顶部时自动恢复(即,您点击系统后退按钮)。

只有带有 android:id 的视图才会保存和恢复它们的状态,因此请确保任何重要的视图都有一个 ID。