保持活动处于暂停状态 - Android

时间:2011-08-27 12:25:14

标签: android android-layout android-widget

我有一个带有3个标签的应用程序,每个标签有一个活动。当我在前两个活动之间切换时,前往后台的活动将通过onPause()状态,而新活动将变为活动状态并调用onResume()。这很好,因为这两个活动都有一个复杂的UI并且渲染它们需要2-3秒,但是当它们处于暂停状态时,它们会很快恢复。

但是,当我点击第3个标签,然后应用程序行为不同时,将进入后台的活动被完全销毁(它通过onPause()onStop()和{{1} })。

知道行为有何不同?当用户切换到应用程序中的另一个活动时,有没有办法强制活动保持暂停状态?

由于 斯登

2 个答案:

答案 0 :(得分:4)

此行为甚至可能在其他设备或任何其他上下文(不同的可用内存量等)上有所不同。

您有

的保证
    {li> onResume()Activity前进时被调用 当onPause()进入后台时,会调用
  • Activity

这是您唯一的保证。 (有关Activity生命周期here)的详细信息。

所以你绝对不能假设onStop()onDestroy()的召唤。每次从选项卡切换到另一个选项卡时,都可以调用它们,并且您的应用程序需要能够处理它。

答案 1 :(得分:1)

第一个活动被销毁的原因可能是缺少堆内存。如果Android内存不足,则会导致后台活动失败。这种行为不会受到开发人员的影响,因为如果没有足够的内存来保持工作,整个系统会减速并崩溃。