归因于活动导致重新启动时不显示对话框

时间:2011-06-08 14:31:32

标签: android dialog android-lifecycle

我一直在探讨这个问题,我似乎无法弄明白。我有一个简单的应用程序,有一些普通的视图和GL表面视图,我使用onCreateDialog()做了一些对话框,一切似乎都很好。

@Override
protected Dialog onCreateDialog(int id)
{
     super.onCreateDialog(id);

     Dialog m_Dialog = null;

     // help dialog
     if (id == HELP_DIALOG)
     {
        m_Dialog = new Dialog(this);
        m_Dialog.setContentView(R.layout.help_dialog);
        m_Dialog.setTitle("Instructions - Press BACK to close");
     }
 }

但是,如果我使用home退出应用程序,然后返回应用程序,对话框不再出现,但屏幕会变暗,就好像正在显示对话框一样。我正在调用onPrepareDialog(),即使对话框没有显示,我在那里尝试了一些东西,如调用对话框中的show()。它变得有点奇怪,如果我然后切换到我的GL表面视图并返回对话框再次工作。我正在使用ViewAnimator在我的视图之间切换。我很确定我正在处理生命周期,而不是onPause()/ onResume()

@Override
protected void onResume()
{
    super.onResume();
    m_Sensors.StartSensors();       
    m_GameThread.Pause(false);
    glSurface.onResume();
}

一如既往,感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我没有尝试过在Android上使用GL,但我最近经历过一些主页按钮/重新打开应用程序的怪异 - 在我的情况下,它结果与以下问题有关,您可能需要检查出:

http://code.google.com/p/android/issues/detail?id=5277

http://code.google.com/p/android/issues/detail?id=2373

希望它可以帮助你走上正确的轨道。