Activity生命周期

来源:互联网 发布:嵌入式软件版本说明 编辑:程序博客网 时间:2024/05/20 11:33

                  本文主要讲解一下Activity的生命周期,相信大家都知道何为Activity,请看下图:

                   

        

                 从图中可以看出Activity有7种状态:onCreate(),onStart(),onResume(),onPause(),onStop(),onDestroy(),onRestart();

                 当一个Activity启动并显示在屏幕上的时候,它依次要执行onCreate() 、onStart() 、onResume()。

                下面我们来看这两种情况:

               1、有2个Activity,第一个Activity上有一个按钮,点击它可以打开第二个Activity,这时当我们显示第一个Activity时,依次执行的函数为:                           onCreate()、onStart()、onResume()。   执行完毕第一张Activity显示出来,点击按钮,此时会先执行第一个Activity的onPause()函                               数, 再依次执行第二个Activity的onCreate()、onStart()、onResume()函数,显示出第二个Activity。接着执行第一个Activity的onStop()函                     数。此时如果返回到第一个Activity,会先执行第二个Activiy的onPause()函数,接着依次执行第一个Activity的onRestart()onStart()、                             onResume()。显示出第一个Activity后,再执行第二个Activity的onStop()函数。

        

               2、有2个Activity,第一个Activity上有一个按钮,点击它可以打开第二个Activity,此时的Activity是对话框主题的,这是当我们显示第一个                           Activity时,依次执行的函数为onCreate()、onStart()、onResume()。 执行完毕第一张Activity显示出来,点击按钮,此时会先执行第一个                     Activity的onPause()函数,再依次执行第二个Activity的onCreate()、onStart()、onResume()函数,显示出第二个Activity。此时如果返回                       到第一个Activity,会先执行第二个Activiy的onPause()函数,接着依次执行第一个Activity的onResume() 函 数 。显示出第一个Activity                          后,再执行第二个Activity的onStop()函数。


              当我们自己调用了finish函数的时候,就会调用onDestroy()函数。

              总结:大家只需要看清楚上面那张图就行了,一个状态到另一个状态肯定是根据图上面的流程而来。

       




0 0