Activity作为Android的四大组建之一,也是最主要的组件,它承载着app与用户之间的直接联系。因此这篇文章主要从Activity的生命周期来入手,了解一下Activity的工作流程。
Acitvity主要有七大生命周期onCreate,onStart,onResume,,onPause,onStop,onRestart,onDestroy。下面我们就看图了解一下这7个生命周期之前的联系。
onCreate:Activity生命周期的第一个方法,在这个方法中可以做加载布局,或者一些初始化的工作,例如:数据初始化,资源加载
onStart:Activity正在被启动,但是当前Activity处于不可见状态
onRestart : Activity正在被重新启动,也就是当前Activity从不可见状态到可见状态,会调用onRestart方法
onResume :Activity处于可见状态,每次加载Activity onResume方法都会执行,因此之前的工作中,会在onresume方法中做一些每次出现页面需要跟新数据的操作;
onPause :Activity 正在停止,紧接着onStop就回被调用。在特殊情况下快速回到当前Activity,那么onresume就会被调用。
onStop: Activity即将停止,可以做一些轻量级的回收工作;
onDestroy :销毁Activity ,做回收工作,资源释放;
正常的Activity启动: onCreate --》onStart -->onResume
当用户切换到新的Activity或者切换到界面的时候 调用 onPause -->onStop
当用户再一次回到之前的Activity的时候 onRestart -->onStart -->onResume.
当用户按返回键销毁当前Activity的时候 onPause -->onStop -- >onDestroy;
如果Activity没有做处理,在使用的时候屏幕会发生横竖屏切换,这个时候系统会将我们的Activity进行销毁重建,所以会调用onPause -->onStop -->onDestroy
因为该Activity是在异常情况下终止的,系统会调用onSaveInstanceState,来保存当前界面上的试图数据,在Activity重建的时候OnRestoreInstanceState ,并且会得到Activity意外销毁是通过onSaveInstanceState方法保存起来的数据
新闻热点
疑难解答