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

Luc*_*ano 1 android android-architecture-components android-jetpack

导航到另一个片段时立即调用onDestroyView()是正常行为吗?

我调用以下方法进行导航:

findNavController().navigate(R.id.action_homefragment_to_detailsfragment)
Run Code Online (Sandbox Code Playgroud)

有办法避免这种情况吗?还是应该从ViewModel恢复所有内容?例如,我在ScrollView中的最后一个滚动位置。

ian*_*ake 5

后堆栈上的片段的视图被破坏,但是视图状态被保存并再次回到堆栈顶部时自动恢复(即,您按下系统后退按钮)。

只有状态为的视图才能android:id保存和恢复,因此请确保所有重要的视图都具有ID。