写这篇博文之前,已经对android有一定的了解和认识。这篇博文主要讲述android的Activity的生命周期,这是android开发者必须掌握的知识。android的Activity组件拥有7个生命周期:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestory()、onReStart()。

这7个生命周期分别在4个特定阶段进行调用。

开始Activity:当Activity开始运行的时候依次执行3个生命周期:onCreate、onStart、onResume。

Activity失去焦点:如果从一个Activity进入另外一个焦点,当前Activity执行:onPause、onStop。

Activity重新获得焦点:返回此Activity的时候:onReStart、onStart、onResume。

关闭Activity:Activity·被关闭:onPause、onStop、onDestory。

Activity生命周期流程图:

Android 四大组件之Activity生命周期_第1张图片

从图中看出Activity生命周期的两层循环:1.onResume、onPause、onResume;2.onStop、onReStart、onStart、onResume、onPause、onStop

Activity有三种生命周期:

整体生命周期:onCreate、onStart、onResume、onPause、onStop、onDestory

可视生命周期:onStart、onResume、onPause、onStop

焦点生命周期:onResume、onPause

代码验证android的生命周期

    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Log.d("test", "onCreate");    }    @Override    protected void onStart() {        // TODO Auto-generated method stub        super.onStart();        Log.d("test", "onStart");    }    @Override    protected void onResume() {        // TODO Auto-generated method stub        super.onResume();        Log.d("test", "onResume");    }    @Override    protected void onPause() {        // TODO Auto-generated method stub        super.onPause();        Log.d("test", "onPause");    }    @Override    protected void onStop() {        // TODO Auto-generated method stub        super.onStop();        Log.d("test", "onStop");    }    @Override    protected void onDestroy() {        // TODO Auto-generated method stub        super.onDestroy();        Log.d("test", "onDestory");    }    @Override    protected void onRestart() {        // TODO Auto-generated method stub        super.onRestart();        Log.d("test", "onRestart");    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        // Handle action bar item clicks here. The action bar will        // automatically handle clicks on the Home/Up button, so long        // as you specify a parent activity in AndroidManifest.xml.        int id = item.getItemId();        if (id == R.id.action_settings) {            return true;        }        return super.onOptionsItemSelected(item);    }
生命周期测试

程序刚开始运行

Android 四大组件之Activity生命周期_第2张图片

程序失去焦点

Android 四大组件之Activity生命周期_第3张图片

Android 四大组件之Activity生命周期_第4张图片

更多相关文章

  1. android之组件1
  2. android之实现各个组件点击事件处理
  3. Android学习笔记——Android生命周期
  4. android之实现SeekBar拖动组件
  5. android 自定义组件圆形边框
  6. Android 的自定义Spinner组件实现方式
  7. android EditText 默认情况下不获取焦点(不弹出输入框)

随机推荐

  1. Android中的OpenGL ES使用基础
  2. 二维码识别IOS或Android客户端
  3. 调用高德地图、百度地图客户端
  4. android EditText 限制输入大小写,大写转
  5. Android(安卓)10.0 Activity启动详解(二)
  6. Gradle Android基本应用
  7. Android学习之多线程编程(handler篇)
  8. Android(安卓)Studio 自定义皮肤主题和背
  9. Android包管理机制(二)PackageInstaller安
  10. Android小程序-Walker注册页面(六)