DialogFragment因方向改变而被驳回

时间:2015-04-20 13:22:43

标签: android android-fragments android-support-library android-dialogfragment orientation-changes

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

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

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

*到目前为止我观察到的是,只要FragmentManager包含一个保留的片段,对话就会因方向改变而被解雇!这是为什么?! *

我尝试了here建议的常用解决方法,但他们没有帮助。

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

1 个答案:

答案 0 :(得分:1)

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

我制作了一个项目,Fragment是静态的,并使用activity标记在<Fragment>布局中构建。而问题已经消失。

由于我在我的应用程序中使用动态片段并且静态片段很好,我怀疑我没有在onCreate的{​​{1}}方法中以正确的方式替换片段。

更正了此问题已得到解决。