在我的应用程序中,在特殊情况下,我需要启动一个 Activity 并将其放在当前显示的 Activity 后面,我的意思是如果用户正在显示的当前 Activity 已关闭,用户现在可以看到我刚刚显示的 Activity开始了。怎么做?
问问题
874 次
2 回答
2
你不能做这个。
活动总是会马上开始。您不能以您想要的方式操作后堆栈。
您必须检测活动关闭,然后开始您的新活动。
于 2013-10-13T09:33:09.567 回答
0
您可以通过使用实现您的案例onDestroy ()
在销毁活动之前执行任何最终清理。这可能是因为 Activity 正在完成(有人在其上调用了 finish(),或者因为系统正在临时销毁该 Activity 实例以节省空间。您可以使用 isFinishing() 方法区分这两种情况。
注意:不要指望这个方法被称为保存数据的地方!例如,如果一个活动正在内容提供者中编辑数据,那么这些编辑应该在 onPause() 或 onSaveInstanceState(Bundle) 中提交,而不是在这里。此方法通常用于释放资源,例如与活动相关联的线程,以便被破坏的活动不会在其应用程序的其余部分仍在运行时留下这些东西。在某些情况下,系统会简单地终止 Activity 的宿主进程,而不会在其中调用此方法(或任何其他方法),因此不应使用它来执行打算在进程消失后保留的事情。
派生类必须调用该方法的超类实现。如果他们不这样做,将引发异常。
来源:http: //developer.android.com
于 2013-10-13T10:10:25.360 回答