Google官网给的Activity声明周期图:
从这种图中,我们可以知道Activity生命周期是:
onCreate -> onStart -> onResume -> onPause -> onStop ->onDestroy.
更详细一点就是 onCreate是ActivityA创建时调用, onStart是用户能看见ActivityA时调用(但是不可以交互), onResume是用户与ActivityA可交互时调用. 当另外一个ActivityB弹出(比如广告),遮盖住ActivityA一部分时, 调用ActivityA的OnPause方法(因为此时ActivityA不能交互了), 然后调用ActivityB的onCreate, onStart, onResume方法. 如果此时ActivityB整个遮盖住了ActivityA, 就会调用ActivityA的onStop方法(因为此时ActivityA不能看到了). 如果用户彻底退出应用, 就会执行ActivityA的 onDestroy方法.
再详细一点就要涉及到activity的状态了.因为一个activity有三个状态,分别为:
- Resumed
- Paused
- Stopped
通过调用onCreate, onStart, onResum, onPause, onStop, onDestroy就可以在这些状态间转换.
但是在每个方法里,都适合做些什么任务呢?
在谷歌