2011-11-10 144 views
0

我试图从另一个活动(Act1)开始一个活动(Act2),并且它不会像它应该那样发生。Android活动没有显示

在调试器中,我可以看到,作为被称为3次(!! ...),没有错误显示,或异常捕获调用startActivity()方法的onCreate()ACT2的的结果,不幸的是所需的用户界面不显示。

为了设法更好地了解问题出在哪里,我运行表现出预期的正常行为,在未来2个测试:

  1. ,当我修改ACT1开始ACT3(而不是ACT2,只是 理解如果Act1的问题),然后act3按预期显示其UI。
  2. 当Act4启动Act2时,它按预期运行,并在屏幕上显示UI。

至于代码,我开始的常见的方式活动:

Intent intent = new Intent(Act1.this, Act2.class); 
startActivity(intent); 

任何人都面临这样的事情吗?

谢谢。

回答

0

您可能需要阅读关于Activity lifecycle的文档。

OnCreate只会在活动的每个生命周期中被调用一次。但是,有很多情况会导致您的活动被杀死并重新启用。因此,onCreate会再次被调用。

为了正确支持这一点,您可以将状态信息保存在onSaveInstanceState中,并在您创建时所处的状态包之后进行恢复。

+0

thanls为快速响应。 –

+0

我希望它能帮助你。 –

+0

感谢您的快速响应。但我已经看到了生命周期,但是我并没有解散和什么原因导致我的活动在从不同的上下文中调用时(以及从当前上下文 - 有效地激活另一活动)运行正常 –