Android中activity的生命周期以及使用场景
#1完整生命周期代码如下。
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
publicclass MainActivity extendsActivity {
//被创建的时候调用的方法
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.println("oncreate");
}
//被销毁的时候调用的方法
@Override
protectedvoid onDestroy() {
System.out.println("ondestory");
super.onDestroy();
}
//当activity界面用户可见的时候调用的方法
@Override
protectedvoid onStart() {
System.out.println("onstart");
super.onStart();
}
@Override
protectedvoid onRestart() {
System.out.println("onrestart");
super.onRestart();
}
//当activity界面用户不可见的时候调用的方法
@Override
protectedvoid onStop() {
System.out.println("onstop");
super.onStop();
}
//界面开始获取到焦点对应的方法。 (界面按钮可以被点击,文本框可以输入内容)
@Override
protectedvoid onResume() {
System.out.println("onresume");
super.onResume();
}
//界面失去焦点对应的方法(暂停)(按钮不可被点击,文本框不可输入内容,但是界面用户仍然能看见)
@Override
protectedvoid onPause() {
System.out.println("onpause");
super.onPause();
}
publicvoid click(View view){
Intent intent = newIntent(this,SecondActivity.class);
startActivity(intent);
}
}
#2生命周期
完整生命周期 oncreate--》onstart--》onresume--》onpause--》onstop--》ondestory
可视生命周期 onstart--》onresume--》onpause--》onstop
前台生命周期 onresume--》onpause 界面用户仍然可见,但是失去焦点
#3使用场景
1.应用程序退出自动保存数据 ondestory oncreate2.应用程序最小化 暂停的操作 onstop onstart 视频播放器
3.游戏的暂停和开始 前台生命周期
#4Tips
创建时调用oncreate() ----销毁时调用ondestory()当activity界面用户可见的时候调用的方法onStart() ----当activity界面用户不可见的时候调用的方法onStop()
界面开始获取到焦点对应的方法。 (界面按钮可以被点击,文本框可以输入内容)onResume() ----界面失去焦点对应的方法(暂停)(按钮不可被点击,文本框不可输入内容,但是界面用户仍然能看见onPause()