温故而知新,本以为自己对Activity的生命周期已经很了解,其实不然,多看看基础知识。
首先上图
1其中有一点我开始不是很明白,如何才能从onPause到onResume呢?
答案就是在跳转到第二个页面的时候,常理来讲,第一个页面应该执行onPause、onStop回来的时候执行onRestart、onStart、onResume因为页面已经不可见了,但是有一种情况,如果第二个页面是非全屏的或者是透明的,依然需要显示出第一个页面,那么第一个页面就不属于不可见状态,这样的他只会执行到onPause,回来的时候执行onResume。
2如果一个Activity是Pause或者Stop状态,系统可以将它在内存中删除,系统会采用两种方式删除,要么要求Activity结束,要么直接杀掉进程,当Activity再次显示给用户时,系统会从onCreat重新执行,恢复页面。
3来讲讲各个生命周期发生是,页面的变化
页面从onCreat开始,这里不能做耗时操作,以免影响页面的显示。可以在此方法中,建立布局,绑定控件。
可见生命周期从onStart开始onStop结束,
onPause是页面将要离开的标志,此时可以做一个提交操作,比如保存邮件。释放资源,这个资源不是指所有的资源,而是一些
onResume初始化onPause中释放的组件,并执行一些只有获取焦点后才使用的组件。