Android 屏幕旋转后延迟绘制对话框片段

Android 屏幕旋转后延迟绘制对话框片段,android,android-dialogfragment,screen-rotation,dialogfragment,Android,Android Dialogfragment,Screen Rotation,Dialogfragment,我有一个DialogFragment,比如a启动另一个DialogFragment,比如B使用FragmentManager。当我旋转屏幕时,有时B隐藏在A后面。在这种情况下,我看不到B,如果我关闭A,B将导致崩溃。这种情况并不总是发生。我已经复制了好几次了 问题: 为什么会发生这种情况 有没有办法避免这种情况 为什么? 当屏幕旋转时,活动将重新创建,但未保存对话框片段的实例,因此当您调用disease()时在它上面,您会得到一个NullPointerException,因为您调用了disc

我有一个DialogFragment,比如a启动另一个DialogFragment,比如B使用FragmentManager。当我旋转屏幕时,有时B隐藏在A后面。在这种情况下,我看不到B,如果我关闭A,B将导致崩溃。这种情况并不总是发生。我已经复制了好几次了


问题:

  • 为什么会发生这种情况
  • 有没有办法避免这种情况
  • 为什么?
    当屏幕旋转时,活动将重新创建,但未保存
    对话框片段
    的实例,因此当您调用
    disease()时
    在它上面,您会得到一个
    NullPointerException
    ,因为您调用了
    disclesh()

    如何避免
    调用
    dismise()
    时,使用调用
    show时使用的**标记*(getSupportFragmentManager,标记)执行
    findFragmentByTag(标记)
    最后,如果显示,则调用
    discouse()

    这就是我从你提供的信息中所想的