有人知道onResume()和onRestart()之间的区别吗?

时间:2014-01-21 00:35:32

标签: android android-lifecycle

我想知道两种方法之间有什么区别,我的意思是,何时是使用一种方法而不是另一种方式的最佳时间以及为什么?

2 个答案:

答案 0 :(得分:1)

何时调用OnResume?

用户在活动1中,现在遍历到活动2.(活动1根本不可见)。现在,用户单击活动1中的后退按钮,调用活动1的OnResume方法。

当OnRestart被调用时?

当用户从活动1遍历活动2时,如上例所示,回到活动1,onRestart被调用。

那有什么区别?

每当活动在背景到前景状态之间移动时,就会调用OnResume方法。

但是,只有在调用onStop方法时才会调用 onRestart。

请注意,系统还会调用 onStart()方法,该方法会在您的活动可见时(无论是重新启动还是第一次创建)。但是,只有当活动从停止状态恢复时才会调用onRestart()方法。

何时使用OnRestart方法?

当您想要执行可能仅需要的特殊恢复工作时(如果您已经处理了用于释放CPU密集型资源的onStop方法),如果活动先前已停止但未被销毁,请使用此选项。

答案 1 :(得分:0)

OnResume方法在创建活动后调用,并且显示给用户,因此,当您尝试连接到在OnPause方法中禁用的资源时,它很有用

第二个,如果你有2个活动,你将第一个活动转移到第二个活动停止状态,所以当你返回它时你不需要从头创建它你只需要重新启动它所以重启将调用start方法,然后onresume方法,所以在大多数情况下你直接处理onresume

相关问题