Activity生命周期

在Activity中有7个基本的生命周期方法,主要介绍下各个的触发条件,直接看代码即可:

package com.example.android_test_activity;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

//    创建时或执行了onDestory后 触发,只执行一次后就不会在执行了
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        System.out.println("onCreate is comming!!");
        setContentView(R.layout.activity_main);
    }
//  在执行了onCreate后不会触发这个方法
//    这个方法的触发条件是在当前activity工作时按下home键 会触发 onPause,onStop两个方法
//    再回到这个Activity时会触发 此方法  所有的方法的执行顺序是:onRestart onStart onResume
    
    @Override
    protected void onRestart() {
        System.out.println("onRestart is comming!!");
        super.onRestart();
    }
//  在onCreate和onRestart方法后一般都会执行的可以看见这个Activity时 Activity有可见变成不可见时
    @Override
    protected void onStart() {
        System.out.println("onStart is comming!!");
        super.onStart();
    }
//  获得焦点时会执行,也可以理解成可以与用户发生交互的条件下可以执行这里  注意“透明”应用
    @Override
    protected void onResume() {
        System.out.println("onResume is comming!!");
        super.onResume();
    }
//  失去焦点时会执行,也可以理解成不能与用户发生交互的条件下可以执行这里注意“透明”应用
    @Override
    protected void onPause() {
        System.out.println("onPause is comming!!");
        super.onPause();
    }
//    由可见变成不可见 Activity时
    @Override
    protected void onStop() {
        System.out.println("onStop is comming!!");
        super.onStop();
    }
// 按返回键会触发,按home键不会触发
    @Override
    protected void onDestroy() {
        System.out.println("onDestroy is comming!!");
        super.onDestroy();
    }

}

大家可以运行代码看一下!

注意:

  Activity中执行onPause() 却不会执行onStop()方法的情况

   基础而已。

posted @ 2018-05-03 18:44  醉醉龙  阅读(133)  评论(0编辑  收藏  举报