我有一个保留的片段,其中显示了一个对话框片段。问题是对话框在方向更改时被驳回。

*请注意,我遇到的问题不是对话框片段本身具有setRetainInstance(true),而是我在其中显示对话框的根片段*

在根片段中将其设置为setRetainInstance(false)可解决此问题,但需要将其保留在我的应用程序中。

*到目前为止,我观察到的是,只要FragmentManager包含保留的片段,对话框在方向改变时就消失了!这是为什么?! *

我尝试了建议的here流行的解决方法,但它们没有帮助。

我试图解决这个问题大约一年了,但是没有运气。

最佳答案

好吧,我发现了问题的根源。
看来我正在弄弄activity如何保留FragmentManager,然后在重新创建活动时恢复片段的状态。

我制作了一个项目,该项目Fragment是静态的,并使用activity标签在<Fragment>布局中构建。问题解决了。

由于我在应用程序中使用了动态片段,而静态片段就很好了,所以我怀疑我在onCreateactivity方法中没有以正确的方式替换片段。

更正了该问题,此问题已修复。

07-24 09:49