我是一名大一学生,刚学android开发不久,所以把知识点进行记录,可以与更多的伙伴进行讨论、学习、分享
下面是android生命周期的笔记:
下面是一张示意图:
从一个程序启动到结束:onCreate()→onStart()→onResume()→onPause()→onStop()→onDestory(); ,即 创建→开始→恢复→暂停→停止→销毁
还有一个返回是onRestart(); 即 重新开始;
一个程序启动会执行的是:onCreate()→onStart()→onResume();
然后突然来电话或者按Home键后执行的是:onPause()→onStop();
然后有返回到程序执行的是:onRestart()→onStart()→onResume();
然后退出程序执行的是:onPause()→onStop()→onDestory();
---------------------------------------分---------------------------------------割---------------------------------------线---------------------------------------
可以用代码进行演示:
第一步.新建一个android工程,在Activity中重写7个方法,每个语句都进行输出:
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
// 重写六个方法
// 创建
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 输出语句
System.out.println("这是onCreate()");
}
// 开始
@Override
protected void onStart() {
super.onStart();
// 输出语句
System.out.println("这是onStart()");
}
// 恢复
@Override
protected void onResume() {
// 输出语句
super.onRestart();
System.out.println("这是onStart()");
}
// 暂停
@Override
protected void onPause() {
super.onPause();
// 输出语句
System.out.println("这是onPause()");
}
// 停止
@Override
protected void onStop() {
super.onStop();
// 输出语句
System.out.println("这是onStop()");
}
// 重新开始
@Override
protected void onRestart() {
super.onRestart();
// 输出语句
System.out.println("这是onRestart()");
}
// 销毁
@Override
protected void onDestroy() {
super.onDestroy();
// 输出语句
System.out.println("这是onDestroy()");
}
}
第二步.设置过滤器(Logcat):过滤System.out :
第三步.运行程序:
运行程序后观察logcat:
将程序按home键后观察logcat:
在后台中打开后观察logcat:
退出程序后观察logcat:
通过以上代码,大家明白了吧:
一个程序启动会执行的是:onCreate()→onStart()→onResume();
然后突然来电话或者按Home键后执行的是:onPause()→onStop();
然后有返回到程序执行的是:onRestart()→onStart()→onResume();
然后退出程序执行的是:onPause()→onStop()→onDestory();
熟记生命周期,尤其是应届生,面试的时候常被问到!
有什么不对的欢迎小伙伴们进行指正,嘿嘿共同学习!