我一直在探讨这个问题,我似乎无法弄明白。我有一个简单的应用程序,有一些普通的视图和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();
}
一如既往,感谢您的帮助。
答案 0 :(得分:0)
我没有尝试过在Android上使用GL,但我最近经历过一些主页按钮/重新打开应用程序的怪异 - 在我的情况下,它结果与以下问题有关,您可能需要检查出:
http://code.google.com/p/android/issues/detail?id=5277
http://code.google.com/p/android/issues/detail?id=2373
希望它可以帮助你走上正确的轨道。