将活动发送到后台而不完成

1Ha*_*aKr 16 android android-activity

如何在不调用finish()方法的情况下将活动转到后台并返回启动此活动的Parent活动?我尝试了很多,但我找不到解决方案.所以,如果你们能帮助我,我会非常感激.

mhs*_*ith 40

如果Activity在与其父级的不同任务中运行,则以下内容将起作用.要做到这一点,看到http://developer.android.com/guide/topics/manifest/activity-element.html#lmode.

public void onBackPressed () {
    moveTaskToBack (true);
}
Run Code Online (Sandbox Code Playgroud)

目前的任务将被隐藏,但它的状态将保持不变,而当它被重新激活它会出现,就像它是当你离开它.

  • 绝对不能保证活动的状态不会受到影响.在所有可能的情况下,该活动将被操作系统破坏.除非您响应生命周期事件并相应地保存/恢复状态,否则您的活动将不知道它是否已创建并向后移动. (4认同)
  • Jonathan是正确的,没有_guarantee_后台活动将继续运行.但在正常情况下,直到一段时间过后,操作系统才会销毁它们.如果破坏会给您带来问题,那么您必须像其他评论者所说的那样保存和恢复状态. (2认同)