我正面临Android导航组件碎片重建的问题。我已经集成了底部导航,并将其与Android导航组件耦合。因此,每次我点击底部栏上的标签时,碎片都会被重建,旧的状态不会被保留。
我想保留片段的状态,即使当我去其他标签页,并回来。我没有找到任何解决方案,它的任何地方。
除了底部导航,我正在使用navController.navigate()
方法在不同的片段之间导航。
我正面临Android导航组件碎片重建的问题。我已经集成了底部导航,并将其与Android导航组件耦合。因此,每次我点击底部栏上的标签时,碎片都会被重建,旧的状态不会被保留。
我想保留片段的状态,即使当我去其他标签页,并回来。我没有找到任何解决方案,它的任何地方。
除了底部导航,我正在使用navController.navigate()
方法在不同的片段之间导航。
3条答案
按热度按时间bq8i3lrv1#
嗨,这个问题在最新版本2.4.0-alpha 01中得到了修复,现在有了一个支持多个回溯栈导航的功能
checkout 链接:https://developer.android.com/jetpack/androidx/releases/navigation#version_240_2
68bkxrlz2#
导航在处理多个返回堆栈时出现问题。可以使用here解决此问题
您也可以使用ViewModels来保留检视状态。
7fyelxc53#
或者,您可以使用隐藏/显示片段来代替导航:Show hide fragment in android