在Android中,你需要熟悉Activity生命周期的运作机制,才能更好的把握她。
可以看下这个流程图
onResume的调用途径更多,用处就是获得焦点使得Activity处于可交互状态。
包括Activity创建后和重新启动。我们经常会看到有些窗口被另外一个透明窗口覆盖,虽然能看到但无法对他进行操作,这时的Activity就没有获得用户焦点。
生命周期有两种:
1、开始创建Activity->onCreate()->onStart()->onResume()->获得焦点可交互状态。
2、不可见状态->onRestart()->onStart()->onResume()->获得焦点可交互状态。
onRestart 当处于非栈顶状态的活动需要再次返回栈顶,展现给用户的时候,触发该方法。
也就是说执行了onStop()且没有执行onDestroy()的Activity被重新激活时,就会调用onRestart()方法。
生命周期只有一种:Running状态->onPause()->onStop()->不可见状态->onRestart()->onStart->onResume()->获得焦点可交互状态。