Fragment跳转返回后偶现空白及后续页面全空白问题排查
事务执行时机不当
你将跳转逻辑放在onCreateView或onResume方法中,这两个方法会在Fragment生命周期的多个场景下触发(比如从后台回到前台、返回栈恢复时)。若未添加判断条件限制执行时机,会导致事务重复执行,打乱Fragment栈的正常状态,最终引发视图无法正确渲染的问题。比如每次回到Fragment A都会触发跳转,多次叠加事务后,FragmentManager内部状态异常,返回时无法找到正确的A实例恢复视图。Fragment实例与状态不一致
当Fragment A的视图因内存回收、配置变更未正确处理等原因被意外销毁时,返回栈中留存的Fragment实例状态可能与实际视图状态不匹配。从返回栈恢复A时,onCreateView可能无法正确重建视图,或者视图容器已被其他事务占用,导致内容无法渲染。FragmentManager内部状态错乱
频繁执行replace操作并添加到返回栈,如果事务在提交前遇到Activity状态不稳定(比如即将销毁),可能会导致事务提交不完整,进而打乱FragmentManager的内部栈状态。此时按下返回键弹出栈时,无法正确恢复之前的Fragment视图,甚至后续所有Fragment事务都会因Manager状态异常而失效,出现全局白屏。视图容器复用冲突
如果R.id.container这个布局容器被Activity或其他Fragment重复使用,或者Fragment A的视图销毁时未正确释放容器资源,恢复A时容器可能已被其他视图占用,导致A的视图无法被添加到容器中,呈现白屏。未捕获的渲染异常
若Fragment A的onCreateView或onViewCreated方法中存在未捕获的异常(如空指针、资源加载失败),在返回恢复时触发异常会导致视图创建失败,但异常未向外层抛出,表现为白屏。后续操作会因FragmentManager状态被异常干扰,无法正常渲染其他Fragment。
内容的提问来源于stack exchange,提问作者Eric

