微信扫一扫打赏支持

activity生命周期

activity生命周期

一、简介

 

二、代码实例

 com.fry.activityLifeCycle.MainActivity

 1 package com.fry.activityLifeCycle;
 2 
 3 
 4 
 5 
 6 
 7 import android.app.Activity;
 8 import android.content.Intent;
 9 import android.os.Bundle;
10 import android.util.Log;
11 import android.view.View;
12 import android.view.View.OnClickListener;
13 import android.widget.Button;
14 
15 
16 
17 public class MainActivity extends Activity{
18     private Button btn_openActivty;//创建一个button对象
19     private String tag=MainActivity.class.getSimpleName(); 
20      protected void onCreate(Bundle savedInstanceState) {
21             super.onCreate(savedInstanceState);//父类操作
22             setContentView(R.layout.activity_main);//引入名为activity_main的界面
23             btn_openActivty=(Button) findViewById(R.id.btn_openActivity);//找id为btn_openActivity的button
24             /*
25              * activity被创建时执行
26              */
27             Log.d(tag, "onCreate");
28             btn_openActivty.setOnClickListener(new OnClickListener() {//设置button点击监听
29                 
30                 @Override
31                 public void onClick(View v) {//onclick事件
32                     // TODO Auto-generated method stub
33                     Intent intent=new Intent();//初始化intent
34                     intent.setClass(MainActivity.this,Activity01.class);//连接
35                     startActivity(intent);//打开activity
36                     
37                 }
38             });
39         }
40      /*
41       * activity可见时执行
42       */
43      @Override
44     protected void onStart() {
45         // TODO Auto-generated method stub
46         super.onStart();
47         Log.d(tag, "onStart");
48     }
49      
50      /*
51       * activity交互时执行
52       */
53     @Override
54     protected void onResume() {
55         // TODO Auto-generated method stub
56         super.onResume();
57         Log.d(tag, "onResume");
58     }
59     /*
60      * activity重新可见时执行
61      */
62     @Override
63     protected void onRestart() {
64         // TODO Auto-generated method stub
65         super.onRestart();
66         Log.d(tag, "onRestart");    
67     }
68     /*
69      * activity暂停时执行
70      */
71     @Override
72     protected void onPause() {
73         // TODO Auto-generated method stub
74         super.onPause();
75         Log.d(tag, "onPause");
76     }
77     /*
78      * activity停止时执行
79      */
80     @Override
81     protected void onStop() {
82         // TODO Auto-generated method stub
83         super.onStop();
84         Log.d(tag, "onStop");
85     }
86     /*
87      * activity销毁时执行
88      */
89     @Override
90     protected void onDestroy() {
91         // TODO Auto-generated method stub
92         super.onDestroy();
93         Log.d(tag, "onDestroy");
94     }
95 }

测试结果

结果说明

1、打开程序时:执行oncreate、onstart、onresume

2、被其它程序夺取焦点时:执行onpause、onstop

3、重新获得焦点时:执行onrestart、onstart、onresume

4、关闭程序时:执行onpause、onstop、ondestroy

 

三、代码实例

结果说明

1、打开程序时:执行oncreate、onstart、onresume

2、暂停状态:执行onpause

3、从暂停状态返回运行状态:执行onresume

4、停止状态:执行onpause、onstop

5、从停止状态返回运行状态:执行onrestart、onstart、onresume

6、断开状态:执行onpause、onstop、ondestroy

 

com.fry.activityLifeCycle_2.MainActivity

  1 package com.fry.activityLifeCycle_2;
  2 
  3 
  4 
  5 
  6 
  7 import android.app.Activity;
  8 import android.content.Intent;
  9 import android.os.Bundle;
 10 import android.util.Log;
 11 import android.view.View;
 12 import android.view.View.OnClickListener;
 13 import android.widget.Button;
 14 
 15 
 16 
 17 public class MainActivity extends Activity implements OnClickListener{
 18     private Button btn_pause;//创建一个button对象
 19     private Button btn_stop;
 20     private Button btn_offLine;
 21     private String tag=MainActivity.class.getSimpleName(); 
 22      protected void onCreate(Bundle savedInstanceState) {
 23             super.onCreate(savedInstanceState);//父类操作
 24             setContentView(R.layout.activity_main);//引入名为activity_main的界面
 25             btn_pause=(Button) findViewById(R.id.btn_pause);//找id为btn_pause的button
 26             btn_stop=(Button) findViewById(R.id.btn_stop);//找id为btn_stop的button
 27             btn_offLine=(Button) findViewById(R.id.btn_offLine);
 28             btn_pause.setOnClickListener(this);
 29             btn_stop.setOnClickListener(this);
 30             btn_offLine.setOnClickListener(this);
 31             /*
 32              * activity被创建时执行
 33              */
 34             Log.d(tag, "onCreate");
 35             
 36      
 37         }
 38      /*
 39       * activity可见时执行
 40       */
 41      @Override
 42     protected void onStart() {
 43         // TODO Auto-generated method stub
 44         super.onStart();
 45         Log.d(tag, "onStart");
 46     }
 47      
 48      /*
 49       * activity交互时执行
 50       */
 51     @Override
 52     protected void onResume() {
 53         // TODO Auto-generated method stub
 54         super.onResume();
 55         Log.d(tag, "onResume");
 56     }
 57     /*
 58      * activity重新可见时执行
 59      */
 60     @Override
 61     protected void onRestart() {
 62         // TODO Auto-generated method stub
 63         super.onRestart();
 64         Log.d(tag, "onRestart");    
 65     }
 66     /*
 67      * activity暂停时执行
 68      */
 69     @Override
 70     protected void onPause() {
 71         // TODO Auto-generated method stub
 72         super.onPause();
 73         Log.d(tag, "onPause");
 74     }
 75     /*
 76      * activity停止时执行
 77      */
 78     @Override
 79     protected void onStop() {
 80         // TODO Auto-generated method stub
 81         super.onStop();
 82         Log.d(tag, "onStop");
 83     }
 84     /*
 85      * activity销毁时执行
 86      */
 87     @Override
 88     protected void onDestroy() {
 89         // TODO Auto-generated method stub
 90         super.onDestroy();
 91         Log.d(tag, "onDestroy");
 92     }
 93     @Override
 94     public void onClick(View v) {
 95         // TODO Auto-generated method stub
 96         switch (v.getId()) {
 97         case R.id.btn_pause://暂停状态
 98             Intent intent=new Intent();
 99             intent.setClass(this, Activity02.class);
100             startActivity(intent);
101             break;
102         case R.id.btn_stop://停止状态
103             Intent intent2=new Intent();
104             intent2.setClass(this, Activity01.class);
105             startActivity(intent2);
106             break;
107         case R.id.btn_offLine://断开状态
108             finish();
109         default:
110             break;
111         }
112     }
113 }

/activityLifeCycle_2/AndroidManifest.xml

 1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 2     package="com.fry.activityLifeCycle_2"
 3     android:versionCode="1"
 4     android:versionName="1.0" >
 5 
 6     <uses-sdk
 7         android:minSdkVersion="8"
 8         android:targetSdkVersion="19" />
 9 
10     <application
11         android:allowBackup="true"
12         android:icon="@drawable/ic_launcher"
13         android:label="@string/app_name"
14         android:theme="@style/AppTheme" >
15         <activity
16             android:name="com.fry.activityLifeCycle_2.MainActivity"
17             android:label="@string/app_name" >
18             <intent-filter>
19                 <action android:name="android.intent.action.MAIN" />
20 
21                 <category android:name="android.intent.category.LAUNCHER" />
22             </intent-filter>
23         </activity>
24         <activity android:name="com.fry.activityLifeCycle_2.Activity01" ></activity>
25         <activity android:name="com.fry.activityLifeCycle_2.Activity02" android:theme="@android:style/Theme.Translucent" ></activity>
26     </application>
27 
28 </manifest>
<activity android:name="com.fry.activityLifeCycle_2.Activity02" android:theme="@android:style/Theme.Translucent" ></activity>
用来设置页面成透明状态,从而形成暂停状态

 

posted @ 2017-07-30 09:29  范仁义  阅读(484)  评论(0编辑  收藏  举报