码迷,mamicode.com
首页 > 其他好文 > 详细

Activity生命周期详解

时间:2017-09-02 19:57:15      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:prot   详解   创建   stat   cti   undle   进入   logs   onstop   

  activity作为Android开发中一个最重要的组件之一,所以要对它有详细的了解

1.当activity第一次创建时执行以下方法

 

 1 /**
 2      * 第一次创建activity调用
 3      *
 4      * @param savedInstanceState
 5      */
 6     @Override
 7     protected void onCreate(Bundle savedInstanceState) {
 8         super.onCreate(savedInstanceState);
 9         setContentView(R.layout.activity_main);
10         Log.i(TAG, "--------------->onCreate");
11     }
12 
13     /**
14      * activity变为可视状态调用
15      */
16     @Override
17     protected void onStart() {
18         super.onStart();
19         Log.i(TAG, "--------------->onStart");
20     }
21 
22     /**
23      * activity的界面就可以和用户进行交互时调用
24      */
25     @Override
26     protected void onResume() {
27         super.onResume();
28         Log.i(TAG, "--------------->onResume");
29     }

 

1 MainActivity: --------------->onCreate
2 MainActivity: --------------->onStart
3 MainActivity: --------------->onResume

2. 当前activity启动另一个activity时执行的方法

 1  /**
 2      * 用户不可以和界面进行交互时调用
 3      */
 4     @Override
 5     protected void onPause() {
 6         super.onPause();
 7         Log.i(TAG, "--------------->onPause");
 8     }
 9 /**
10      * activity处于不可见状态调用
11      */
12     @Override
13     protected void onStop() {
14         super.onStop();
15         Log.i(TAG, "--------------->onStop");
16     }
1 MainActivity: --------------->onPause
2 MainActivity: --------------->onStop

3.从另一个activity返回到当前activity执行的方法

 1 /**
 2      * 当前activity没有被销毁重新启动时调用
 3      */
 4     @Override
 5     protected void onRestart() {
 6         super.onRestart();
 7         Log.i(TAG, "--------------->onRestart");
 8     }
 9 /**
10      * activity变为可视状态调用
11      */
12     @Override
13     protected void onStart() {
14         super.onStart();
15         Log.i(TAG, "--------------->onStart");
16     }
17  /**
18      * activity的界面就可以和用户进行交互时调用
19      */
20     @Override
21     protected void onResume() {
22         super.onResume();
23         Log.i(TAG, "--------------->onResume");
24     }
1 MainActivity: --------------->onRestart
2 MainActivity: --------------->onStart
3 MainActivity: --------------->onResume

4.当前activity点击home键后执行的方法

 1  /**
 2      * 用户不可以和界面进行交互时调用
 3      */
 4     @Override
 5     protected void onPause() {
 6         super.onPause();
 7         Log.i(TAG, "--------------->onPause");
 8     }
 9 /**
10      * activity处于不可见状态调用
11      */
12     @Override
13     protected void onStop() {
14         super.onStop();
15         Log.i(TAG, "--------------->onStop");
16     }
1 MainActivity: --------------->onPause
2 MainActivity: --------------->onStop

5.从后台运行中进入activity执行的方法与 3 一样

6.点击返回键时执行的方法

 1 /**
 2      * 用户不可以和界面进行交互时调用
 3      */
 4     @Override
 5     protected void onPause() {
 6         super.onPause();
 7         Log.i(TAG, "--------------->onPause");
 8     }
 9 /**
10      * activity处于不可见状态调用
11      */
12     @Override
13     protected void onStop() {
14         super.onStop();
15         Log.i(TAG, "--------------->onStop");
16     }
17 /**
18      * 当activity销毁时调用
19      */
20     @Override
21     protected void onDestroy() {
22         super.onDestroy();
23         Log.i(TAG, "--------------->onDestroy");
24     }
1 MainActivity: --------------->onPause
2 MainActivity: --------------->onStop
3 MainActivity: --------------->onDestroy

7.当切换横竖屏时系统会销毁当前activity重新创建一个activity执行方法的先后顺序如下:

1 MainActivity: --------------->onPause
2 MainActivity: --------------->onStop
3 MainActivity: --------------->onDestroy
4 
5 
6 MainActivity: --------------->onCreate
7 MainActivity: --------------->onStart
8 MainActivity: --------------->onResume

 

Activity生命周期详解

标签:prot   详解   创建   stat   cti   undle   进入   logs   onstop   

原文地址:http://www.cnblogs.com/hejiaoshou/p/7467442.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!