由于工作的需要最近在学习android应用程序编程,下面这幅图是Activity的生命周期
在Activity从建立到销毁的过程中需要在不同的阶段调用7个生命周期方法。这七个生命周期方法的定义如下:
- public class Activity extends ApplicationContext {
- protected void onCreate(Bundle savedInstanceState);
- protected void onStart();
-
- protected void onRestart();
- protected void onResume();
- protected void onPause();
- protected void onStop();
- protected void onDestroy();
- }
上面七个生命周期方法分别在4个阶段调用按一定的顺序进行调用,这四个阶段如下:
1.在开始Activity:在这个阶段执行三个生命周期方法---onCreate onStart onResume
2.Activity失去焦点:如果在Avitity获得焦点的情况下进入其他的Activity或应用程序,当前的Activity
会失去焦点。在这一阶段会依次执行onPause和onStop方法。
3.Activity重新获得焦点:如果Activity重新获得焦点,会依次执行3个生命周期方法--onRestart onStart和onResume方法。
4。关闭Activity:当Activity被关闭时系统会依次执行三个生命周期方法--onPause onStop 和onDestroy.
如果在这四个阶段执行生命周期方法的过程中不发生状态的改变,系统会按上面的描述依次执行这是个阶段的生命周期方法,但如果在执行过程中改变了状态,系统会按更复杂的方式调用生命周期方法。
在执行的过程中可以改变系统的执行轨迹的生命周期方法是:onPause 和onStop。如果在执行pnPuse方法的过程中Activity重新获得了焦点,然后又失去了焦点,系统会不会在执行onStop.方法,而是按如下顺序执行相应的生命周期方法:
onPuse-->onResume-->onPause
如果在执行onStop 方法的过程中Activity重新获得了焦点,然后又失去了焦点,系统将不会执行onDestroy方法,而是按如下顺序执行相应的的生命周期方法:
onStop-->onRestart-->onStart-->onResume-->onPause-->onStop
阅读(8779) | 评论(0) | 转发(0) |