什么是activity的生命周期?
即一个activity从启动到被销毁的过程称为activity的一个生命周期。
三种生命周期:
接下来将以一个案例来体验Activity的生命周期
一、设计要求:
1、主界面点击按钮跳转至界面2以体验主界面的onPause onStop回调方法
返回后体验主界面的onRestart方法
2、主界面点击按钮弹出对话框以体验主界面的onPause回调
返回后体验主界面的onResume方法
二、布局界面
主界面:
界面2
三、Java代码
Mainactivity.java
package com.example.unit5_3activitylifecycle;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d(TAG, "onCreate: is running.");
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "onStart: is running.");
}
@Override
protected void onStop() {
Log.d(TAG, "onStop: is running.");
super.onStop();
}
@Override
protected void onDestroy() {
Log.d(TAG, "onDestroy: is running.");
super.onDestroy();
}
@Override
protected void onPause() {
Log.d(TAG, "onPause: is running.");
super.onPause();
}
@Override
protected void onResume() {
Log.d(TAG, "onResume: is running.");
super.onResume();
}
@Override
protected void onRestart() {
Log.d(TAG, "onRestart: is running.");
super.onRestart();
}
public void StartBtn(View view) {
Intent intent = new Intent(this, Activity2.class);
startActivity(intent);
}
}
Activity2.java
public class Activity2 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2);
}
public void CloseBtn(View view) {
finish();
}
}
四、查阅日志:
①
运行app主界面打开时
点击主界面按钮跳转至界面2
关闭界面2回到主界面
关闭主界面
②由主界面转至对话框界面时
由对话框返回主界面时