前言
笔记
一、Activity的生命周期(七个回调函数方法)
————————————————
onCreate,初始化,比如加载布局、绑定事件
onStart,不可见到可见时调用
onResume,和用户交互前进行调用,此时一定位于栈顶,处于运行状态
onPause,在系统切换到另一个ACT时调用
onStop,完全不可见时调用
onDestroy,在销毁前被调用
onRestart,从停止变为运行时调用,也就是Activity 被重新启动了 ————————————————
完整生存期 ,onCreate —— onDestroy,初始化 —— 释放内存
可见生存期,onStart —— onStop,不可见 —— 可见时调用
前台展示生存期,onResume —— onPause ————————————————
二、步骤
1.准备
1.新建一个项目,再建两个activity,类型任意 2.manifest文件修改其中一个activity的theme属性 原理:通过intent的方式跳转两个不同的activity,其中一个为全部覆盖,另一个为部分覆盖,最后查看日志
<activity
android:name=".DialogActivity"
android:theme="@style/Theme.AppCompat.Dialog"
android:exported="false" />
<activity
android:name=".nomalActivity"
android:exported="false"
android:label="@string/title_activity_nomal"
android:theme="@style/Theme.LifeActivity.NoActionBar" />
<activity
android:name=".MainActivity"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
2.创建两个按钮
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/Btn_nomal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:layout_gravity="center"
tools:ignore="DuplicateIds">
</androidx.appcompat.widget.AppCompatButton>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/Btn_dialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
tools:ignore="DuplicateIds">
</androidx.appcompat.widget.AppCompatButton>
3.引入库
package com.example.lifeactivity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
定义一个tag
用途:方便测试
final static String tag = "hello";
4.创建七个activity的函数方法
@Override
protected void onStart() {
super.onStart();
Log.e(tag, "onStart: ");
}
@Override
protected void onStop() {
super.onStop();
Log.e(tag, "onStop: ");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.e(tag, "onDestroy: ");
}
@Override
public void onRestart() {
super.onRestart();
Log.e(tag, "onRestart: ");
}
@Override
public void onPause() {
super.onPause();
Log.e(tag, "onPause: ");
}
@Override
public void onResume() {
super.onResume();
Log.e(tag, "onResume: ");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.Btn_nomal).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this,nomalActivity.class));
}
});
findViewById(R.id.Btn_dialog).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this,DialogActivity.class));
}
});
}
最后
学习笔记,仅供参考
|