我的代码破坏了我当前的活动并开始了一个新活动,如下所示:
Intent intent = myActivity.getIntent();
myActivity.finish(); //Destroy my activity
myActivity.startActivity(intent); //Start my new activity
它可以工作,之前的活动被销毁并开始新的活动,但是在启动新活动之后,活动的onDestroy()
方法被调用,为什么?
我的代码破坏了我当前的活动并开始了一个新活动,如下所示:
Intent intent = myActivity.getIntent();
myActivity.finish(); //Destroy my activity
myActivity.startActivity(intent); //Start my new activity
它可以工作,之前的活动被销毁并开始新的活动,但是在启动新活动之后,活动的onDestroy()
方法被调用,为什么?
先开始你的新活动,然后完成旧活动。
来自 android文档:-
受保护的无效 onDestroy ()
在销毁活动之前执行任何最终清理。这可能是因为 Activity 正在完成(有人在其上调用 了 finish() ,或者因为系统正在临时销毁该 Activity 实例以节省空间。您可以使用isFinishing()方法区分这两种情况。