如何在android中恢复最近暂停的活动?

Posted

技术标签:

【中文标题】如何在android中恢复最近暂停的活动?【英文标题】:How to resume a recently paused activity in android? 【发布时间】:2017-02-10 05:27:35 【问题描述】:

我已经搜索了解决方案,但没有找到任何帮助。

假设我有三个活动,MainActivity、Activity1 和 Activity2。所有这些活动都扩展了 AppCompactActivity。

在 MainActivity 中定义了这个变量: public static AppCompatActivity mainActivity; 在 onCreate() 方法中,mainActivity 的初始化如下: mainActivity = this;

在 MainActivity 中有一个启动 Activity1 的按钮,在 Activity1 中有一个启动 Activity2 的按钮。

现在我要做的是:覆盖 Activity2 的 onBackPressed(),以便能够从保存在变量 mainActivity 中的对象引用的相同状态恢复。

换句话说,我想恢复活动 mainActivity,而不是开始一个新活动。

我希望你们能帮助我。 谢谢!

【问题讨论】:

【参考方案1】:

尝试覆盖Activity中的onPause和onResume方法。 检查安卓文档 https://developer.android.com/training/basics/activity-lifecycle/pausing.html

【讨论】:

【参考方案2】:

您可以将noHistory 属性设置为Activity1,这样每次从Activity2 返回时,MainActivity 都会恢复。

查看更多信息here.

【讨论】:

我认为这可能有效,但我正在寻找更通用的解决方案。如果我想从任何其他活动启动 mainActivity 怎么办?

以上是关于如何在android中恢复最近暂停的活动?的主要内容,如果未能解决你的问题,请参考以下文章

当活动不在前面时,在Android中暂停CountDownTimer

如何修改正在进行的连接上的流以暂停/恢复流传输

在 ActivityGroup 中暂停和恢复子活动

在 Activity 内部,如何暂停 for 循环以调用片段,然后在按钮单击片段后恢复循环以重新开始

当我的活动不可见时,如何在 Android WebView 中暂停 Flash 内容?

在某些任务杀手杀死应用程序后如何恢复android应用程序?