zoukankan      html  css  js  c++  java
  • 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>
    用来设置页面成透明状态,从而形成暂停状态

  • 相关阅读:
    【软件工程】Alpha冲刺 (6/6)
    【软件工程】Alpha冲刺 (5/6)
    为什么三层感知器能够解决任意区域组合的分类问题(不同隐层数的感知器的分类能力)
    PCA学习笔记(含推导过程)
    软件工程实践总结
    Beta冲刺(2/5)(麻瓜制造者)
    Beta冲刺(1/5)(麻瓜制造者)
    个人作业——华为软件开发云案例分析
    Alpha- 事后诸葛亮(麻瓜制造者)
    Alpha课堂展示(麻瓜制造者)
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/7258298.html
Copyright © 2011-2022 走看看